SSRS экспорты клиентсіз VPN порталы арқылы сәтсіз аяқталады: не айырмашылық бар
Есеп беті көрсетуді дәлелдейді, экспортты емес. Экспорт сұрауын портал арқылы бақылаңыз, тақырыпшалар мен денені салыстырыңыз, содан кейін кез келген ерекшелікті тар шеңберде шектеңіз.
Есеп браузерде ашылады, параметрлер көрсетіледі, ал экспорт түймесі қатені, бос жүктеуді немесе электрондық кесте ашуды қабылдамайтын файлды шығарады. Бұл үйлесімнің стандартты пішіні бар. Жұмыс істеп тұрған есеп беті көрсетуді және аутентификацияны сынақтан өткізді, басқа ештеңе жоқ. Экспорт өз жауабы бар жеке сұрау, ал клиентсіз портал арқылы ол ешқашан файл жүктеулеріне арналмаған қайта жазу қабатынан да өтеді.
Екі жол, бір жұмыс істейтін бет
Көрсету мен экспорттау бір түймеден басталса да, әртүрлі операциялар. Есеп сервері бетті браузерге көрсетеді және экспортты өз мазмұн түрі мен өз қате мінез-құлқы бар басқа шығыс кеңейтімі арқылы көрсетеді, бұны экспорт құжаттамасы сипаттайды. Біріншісін мінсіз өткізетін портал екіншісін бұза алады, өйткені екіншісі портал күтпеген жауап. Екеуі сессия мен мекенжайды бөліседі, ал қалғанын дерлік емес.
Жұмыс істеп тұрған бетті тек аутентификация мен қолжетімділіктің дәлелі ретінде қарастырыңыз. Ол тіркелгінің есеп серверіне жете алатынын және порталдың HTML жіберетінін дәлелдейді. Ол файл жауаптары, мазмұн орналасуының тақырыпшалары немесе құжатпен емес, жүктеумен аяқталатын қайта бағыттаулар туралы ештеңе айтпайды.
Экспорт жолын бөлек салыстырудың бүкіл себебі осында, қазірдің өзінде жұмыс істейтін бетті қайта сынаудың орнына. Сессияны бөлісетін екі сұрау әлі де екі сұрау.
Экспорттың қайда үзілетінін анықтайтын үш шарт
Үш сұрақ ақауды тез анықтайды, ал әр жауап басқа иесін көрсетеді.
Біріншіден, сол есеп, тіркелгі және формат ішкі желіден дұрыс экспорттала ма? Егер солай болса, есеп сервері мен оның көрсеткіші дұрыс, ал айырмашылық қолжетімділік жолында. Екіншіден, сәтсіз жауап файл мазмұнының түрін алып жүре ме, әлде файл кеңейтімін киген HTML бет пе? Бұл көрсеткіш қатесін порталдың алмастыруынан ажыратады. Үшіншіден, портал сұрау URL-ін қайта жаза ма әлде жауаптан тақырыпшаларды жоя ма? Қайта жазылған URL мүлде басқа соңғы нүктеге қонуы мүмкін.
Кез келген параметрді өзгерту алдында үшеуіне де жауап беріңіз, өйткені әрқайсысының емі басқа. Көрсеткіш ақауы есеп серверіне тиесілі, алмастырылған дене порталға тиесілі, ал жойылған тақырыпша қате емес, саясат мәселесі.
Жауаптарды жазып алыңыз. Сол үш жолдан құралған қолдау ісі он экран суретіне тұрарлық.
Күй кодының орнына экспорт жауабын оқыңыз
HTTP сәтті күйі тек бірдеңенің сұрауға жауап бергенін дәлелдейді. Дене мен тақырыпшаларды бірге тексеріңіз, өйткені қызықты ақау — қате мазмұнды алып жүретін сәтті жауап.
curl -sS -D export.headers -o export.bin --location "https://portal.example.com/reports/export?format=xlsx"
file export.bin
head -c 300 export.bin
Тақырыпшалардың шығарылымы мазмұн түрін және портал қайтарған кез келген мазмұн орналасуын көрсетеді. file командасы дененің шын мәнінде не екенін анықтайды, ал электрондық кесте күтілетін жердегі мәтіндік файл — классикалық алмастырылған кіру беті. head командасы бүкіл есепті терминалға төкпей-ақ HTML-ді тануға жеткілікті көрсетеді.
Оның кез келген бөлігін бөліспес бұрын сессия cookie-лері мен токендерді жойыңыз. Жұмыс істеп тұрған экспорттың түсірілімі пайдалы дәлел, ал басқа біреудің сессиясының түсірілімі — оқиға.
Ерекшелікті тіркелгіге емес, қолданбаға шектеңіз
Егер портал жауапты қайта жазып немесе бөгеп тұрса, азғырарлық жөндеу — бүкіл сайтты босату немесе есепті анонимді ету. Екеуі де жүктеуді түзеп, порталдың болу себебін жояды. Шектелген ерекшелік бір қолданба жолын, бір мазмұн түрін және бір бағытты атайды, және саясатқа ие адам үшін ол қарауға қолжетімді болып қалады.
Сіз шын мәнінде іске қосатын шлюз нұсқасын және оның құжатталған қолданба параметрлерін пайдаланыңыз. Жеткізуші бір кездері трафикті өзгеріссіз қалдырады деп сипаттаған опция жалпы нұсқаулық емес, ал оны ескі форум тақырыбынан көшіру — уақытша ерекшеліктің тұрақты архитектураға айналу жолы.
Егер ерекшелікті соншалықты тар шектеу мүмкін болмаса, экспорт порталдың артында емес, басқа қолжетімділік әдісімен ішкі жолға тиесілі болуы мүмкін. Бүкіл сайтты босату — портал иесінің шешімі, бір есеп үшін айналма жол емес.
Экспортты қабылдаңыз, сақтау диалогын емес
Соңғы тексеру — файлдың өзі: ол ашылады, күтілетін бағандарды ұстайды және оның қорытындылары пайдаланушы мақұлдаған есеппен сәйкес келеді.
Сақтау диалогының пайда болуы сәттілік емес, ал жөндеу ескертуімен ашылатын файл да сәттілік емес. Экрандағы есеппен жол санын және бір белгілі мәнді салыстырыңыз, өйткені қиылған экспорт тек файл өлшеміне қарайтын әрбір сынақтан өтеді. Содан кейін екінші рет экспорттаңыз, өйткені бір рет қате денені ұсынған кэш қабаты келесі әрекетте дұрысын ұсынуы мүмкін.
Пайдаланушыға қажет болған жұмыс ағынын қабылдаңыз, одан кем емес. Қате қолданбада ашылатын жүктеу әлі де сәтсіз экспорт.