14Sep

Зашто мој веб прегледач понекад не успева приказати преостале преузимања?

click fraud protection

Понекад верни мерач прогреса преноса у вашем претраживачу( или другом апликацијом) само баца руке у ваздух и одустаје од приказивања преосталог времена преузимања.Зашто понекад заустави пројектовано време за преузимање и понекад не извештава све заједно?

Данашње питање & амп;Сесија одговора долази нам захваљујући СуперУсер-у подскупу Стацк Екцханге-а, групације К & ама;

Питање

СуперУсер читач Цолдблацкице жели да сазна зашто његов прегледач увек не чисти прљавштину:

Повремено, приликом преузимања датотеке у веб прегледачу, напредак преузимања не "зна" укупну величину датотеке, иликолико је далеко у довнлоаду - то само показује брзину при којој се преноси, са укупно као "Непознато".

Зашто претраживач не би знао коначну величину неких датотека?Где добија ове информације на првом месту?

Где је заиста?

Одговара

СуперУсер сарадник Гроностај нуди следећи увид:

Да бисте тражили документе са веб сервера, прегледачи користе ХТТП протокол.Можете знати то име из своје адресе адресе( можда је сада скривено, али када кликнете на адресу, копирајте УРЛ адресу и налепите га у неки текст едитор, видећете хттп: // на почетку).То је једноставан текстуални протокол и ради овако:

instagram viewer

Прво, ваш претраживач се повезује са сервером веб сајта и шаље УРЛ документа који жели да преузме( веб странице су и документи) и неке детаље о самом претраживачу( Усер-Агент итд.).На пример, да бисте учитали главну страницу на СуперУсер сајту, хттп: //superuser.com/, мој претраживач пошаље захтев који изгледа овако:

ГЕТ / ХТТП / 1.1 Хост: суперусер.цом Прикључивање: држати алат Прихвати: текст / хтмл, апликација/кхтмл+кмл,апплицатион/кмл;к=0.9,*/*;к=0.8 Усер-Агент: Мозилла / 4.0( цомпатибле; МСИЕ 6.0; Виндовс НТ 6.1; ВОВ64) Аццепт-Енцодинг: гзип, дефлате, сдцх Аццепт-Лангуаге: пл-ПЛ, к = 0.8, ен-УС; к = 0.6, ен; к = 0.4 Цоокие: [ремовед фор сецурити] ДНТ: 1 Иф-Модифиед-Синце: Туе, 09 Јул 2013 07:14:17 ГМТ

линија одређује који документ сервер треба вратити.Друге линије називају се заглавља;они изгледају овако:

Назив заглавља: ​​Вредност заглавља

Ове линије шаљу додатне информације које помажу серверу да одлучи шта да ради.

Ако је све у реду, сервер ће одговорити слањем траженог документа.Одговор почиње са статусном поруком, након чега следи неколико заглавља( са детаљима о документу) и на крају, ако је све у реду, садржај документа.Ово је одговор СуперУсер сервера на мој захтев:

ХТТП / 1.1 200 ОК Цацхе-Цонтрол: публиц, мак-аге = 60 Цонтент-Типе: тект / хтмл;цхарсет = утф-8 Екпирес: Туе, 09 Јул 2013 07:27:20 ГМТ Ласт-Модифиед: Туе, 09 Јул 2013 07:26:20 ГМТ * Вариант Кс-Фраме: САМЕОРИГИН Дате: Туе, 09 Јул 201307:26:19 ГМТ Цонтент-Ленгтх: 139672 & лт;! ДОЦТИПЕ хтмл & гт;& лт; хтмл & гт;[... снип. ..] & лт; / хтмл & гт;

Након последње линије, СуперУсеров сервер затвара везу.

Прва линија( ХТТП / 1.1 200 ОК) садржи код за одговор, у овом случају 200 ОК.То значи да ће сервер вратити документ, како се тражи.Када серверу то не успе, код ће бити нешто друго: вероватно сте видели 404 Није пронађено, а 403 Забрањено је и јако уобичајено.Затим следи заглавље.

Када прегледач пронађе празну линију у одговору, зна да је све што је прошла та линија садржај документа који је тражио.Дакле у овом случају & лт;! ДОЦТИПЕ хтмл & гт;је прва линија СуперУсеровог почетног кода.Ако сам тражио да се документ преузме, вероватно ће бити неких глупих знакова, јер се већина докумената не може читати без претходне обраде.

Назад у заглавља.Најинтересантнији за нас је последњи, Цонтент-Ленгтх.Она обавештава прегледача колико бајтова података треба очекивати након празне линије, тако да у основи то је величина документа изражена у бајтовима.Овај заглавље није обавезно и може бити изостављено од стране сервера.Понекад се не може предвидјети величина документа( на пример када се документ генерише на лицу), понекад лени програмери га не укључују( прилично често на сајтовима за преузимање драјвера), понекад сајтови стварају нове особе које не знајутаквог заглавља.

У сваком случају, без обзира на разлог, заглавље може недостајати.У том случају претраживач не зна колико ће сервера послати и на тај начин приказује величину документа као непознат , чекајући да сервер затвори везу.И то је разлог непознатих величина документа.

Имате ли нешто да додате објашњењу?Звучи у коментарима.Желите да прочитате више одговора од других корисничких корисника Стацк Екцханге?Овде погледајте комплетну тему.