Чому мій веб-браузер іноді не відображає залишковий час завантаження?

Aug 22, 2025
Хмара та Інтернет
НЕЗАГОТОВЛЕНИЙ ЗМІСТ

Іноді вірний індикатор прогресу завантажень у вашому браузері (або іншому додатку) просто піднімає руки вгору і відмовляється від відображення залишкового часу завантаження. Чому це іноді забиває передбачуваний час завантаження, а іноді не повідомляє про все разом?

Сьогоднішня сесія запитань і відповідей надійшла до нас люб’язно від SuperUser - підрозділу Stack Exchange, угруповання веб-сайтів із питань та відповідей на основі спільноти.

Питання

Читач SuperUser Coldblackice хоче знати, чому його браузер не завжди вимиває бруд:

Іноді, завантажуючи файл у веб-браузері, хід завантаження не „знає” загальний розмір файлу або його відстань - він просто показує швидкість завантаження із загальною сумою як "Невідомий".

Чому браузер не знає остаточний розмір деяких файлів? Звідки вона взагалі бере цю інформацію?

Де справді?

Відповіді

Співавтор SuperUser Гроностай пропонує таке розуміння:

Щоб запитувати документи з веб-серверів, браузери використовують протокол HTTP. Можливо, ви знаєте це ім’я з адресного рядка (воно може бути приховане зараз, але коли ви клацнете адресний рядок, скопіюєте URL-адресу та вставите його в якийсь текстовий редактор, ви побачите http: // на початку). Це простий текстовий протокол, який працює так:

По-перше, ваш браузер підключається до сервера веб-сайту і надсилає URL-адресу документа, який він хоче завантажити (веб-сторінки - це теж документи), та деякі подробиці про сам браузер ( Користувач-агент тощо). Наприклад, щоб завантажити головну сторінку на сайті SuperUser, http://superuser.com/ , мій браузер надсилає запит, який виглядає так:

GET / HTTP / 1.1
Ведучий: superuser.com
Зв'язок: підтримувати життя
Прийняти: text / html, application / xhtml + xml, application / xml; q = 0.9, * / *; q = 0.8
User-Agent: Mozilla / 5.0 (Windows NT 6.1; WOW64)
Прийняти-кодування: gzip, deflate, sdch
Accept-Language: pl-PL, pl; q = 0,8, en-US; q = 0,6, en; q = 0,4
Cookie: [removed for security]
DNT: 1
Якщо модифіковано-з: Вівторок, 09 липня 2013 07:14:17 GMT

Перший рядок визначає, який документ повинен повернути сервер. Інші рядки називаються заголовками; вони виглядають так:

Назва заголовка: значення заголовка

Ці рядки надсилають додаткову інформацію, яка допомагає серверу вирішити, що робити.

Якщо все добре, сервер відповість, надіславши запитуваний документ. Відповідь починається із повідомлення про стан, за яким слідують деякі заголовки (з деталями про документ) і, нарешті, якщо все добре, вміст документа. Ось як виглядає відповідь сервера SuperUser на мій запит:

HTTP / 1.1 200 OK
Керування кешем: загальнодоступне, максимальний вік = 60
Тип вмісту: text / html; charset = utf-8
Закінчується: вівторок, 09 липня 2013 07:27:20 за Грінвичем
Востаннє змінено: вівторок, 09 липня 2013 р., 07:26:20 GMT
Варіант: *
Параметри X-Frame: SAMEORIGIN
Дата: вівторок, 09 липня 2013 р., 07:26:19 GMT
Довжина вмісту: 139672

<! DOCTYPE html>
<html>
    [...snip...]
</html>

Після останнього рядка сервер SuperUser перериває з'єднання.

Перший рядок ( HTTP / 1.1 200 OK ) містить код відповіді , в даному випадку це 200 Добре . Це означає, що сервер поверне документ за запитом. Коли серверу не вдається цього зробити, код буде чимось іншим: ви, напевно, бачили 404 Не знайдено , і 403 Заборонено також є досить поширеним явищем. Потім слідують заголовки.

Коли браузер знаходить у відповіді порожній рядок, він знає, що все, що перебуває за цим рядком, є вмістом запитуваного ним документа. Так і в цьому випадку <! DOCTYPE html> - це перший рядок коду домашньої сторінки SuperUser. Якби я просив документ для завантаження, це, мабуть, були б деякі незрозумілі символи, оскільки більшість форматів документів неможливо прочитати без попередньої обробки.

Повернутися до заголовків. Найцікавіший для нас - останній, Довжина вмісту . Він повідомляє браузеру, скільки байтів даних він повинен очікувати після порожнього рядка, тому в основному це розмір документа, виражений у байтах. Цей заголовок не є обов’язковим і може бути опущений сервером. Іноді розмір документа не можна передбачити (наприклад, коли документ генерується на льоту), іноді ледачі програмісти не включають його (досить часто на сайтах завантаження драйверів), іноді веб-сайти створюють новачки, які не знають такого заголовка.

У будь-якому випадку, незалежно від причини, заголовок може бути відсутнім. У цьому випадку браузер не знає, скільки даних збирається надіслати сервер, і таким чином відображає розмір документа як невідомо , чекаючи, поки сервер припинить з’єднання. І це причина невідомих розмірів документів.


Fixed: Internet Explorer Can Not Display The Web Page


Хмара та Інтернет - Найпопулярніші статті

Як зберегти вкладення Gmail на Google Drive

Хмара та Інтернет Nov 21, 2024

Хоча ви можете отримати доступ до вкладень Gmail, відкривши відповідне повідомлення глибоко в клієнт..


Як налаштувати сімейство Google для спільного використання ваших служб Google

Хмара та Інтернет Jan 2, 2025

Якщо ви платите за книгу в Google Play Книгах, ваш знайомий також повинен мати можливість її читати. Те с�..


Настає прем'єрне видання Windows для Windows і всього іншого

Хмара та Інтернет Oct 16, 2025

НЕЗАГОТОВЛЕНИЙ ЗМІСТ Microsoft вже багато років підтримує Office 365, підписку на Microsoft Office на 100 доларів на..


Як вимкнути публічні сповіщення Wi-Fi на iPhone

Хмара та Інтернет Apr 27, 2025

Однією з маленьких прикрощів iOS є необхідність з’являти сповіщення щоразу, коли виявляє нову мере�..


Як об’єднати різні продукти HomeKit у кімнати, зони та сцени

Хмара та Інтернет Mar 1, 2025

НЕЗАГОТОВЛЕНИЙ ЗМІСТ Є дуже цікавий короткий вихід система Apple HomeKit : HomeKit підтримує поєдн�..


Як додати музичну бібліотеку до Steam та використовувати музичний програвач Steam

Хмара та Інтернет Dec 17, 2024

Музичний програвач Steam дозволяє додавати MP3-файл, що зберігається на вашому комп’ютері, до місцево�..


Як бездротово отримувати доступ до мережевих папок з вашого пристрою iOS

Хмара та Інтернет Sep 2, 2025

Синхронізація файлів між вашим комп’ютером та пристроєм iOS через iTunes може бути нудною і вимагає пр..


Додайте в Chrome список завдань, які не належать Google

Хмара та Інтернет Sep 5, 2025

НЕЗАГОТОВЛЕНИЙ ЗМІСТ Більшість людей покладаються на список завдань, щоб допомогти їм запам'ятати, що �..


Категорії