Frontend-разработчик Dzhavat выяснил экспериментальным образом, что загрузка одного и того же файла 102+ раз в браузерах Edge/Chrome и Firefox приводит к разным результатам.
Прежде чем я покажу вам скриншоты, позвольте мне сначала рассказать вам короткую историю о том, как я оказался в кроличьей норе «давайте‑скачаем‑этот‑файл-102-раза», так что потерпите меня.
Я работаю разработчиком программного обеспечения, и однажды я получил сообщение от коллеги, которая спрашивала что‑то о новой функции. Она прислала мне ссылку на проблему. Там был скриншот, который привлёк моё внимание. Он был очень похож на тот, что ниже.
В то время имя файла было жестко закодировано как «Report.zip». Поэтому увидеть «Report.zip», «Report (1).zip» или «Report (42).zip» было ожидаемо. Вместо счётчика я был удивлён, увидев временную метку. Откуда она взялась? Е совершенно не было в коде. Мой коллега тоже не добавлял её вручную. Что-то было не так.
И с этого момента кроличья нора становилась все глубже и глубже. 🐰
«Настройка браузера!» — подумал я. Это довольно быстро исключили, потому что она не помнила, чтобы меняла какие-либо настройки. Мы искали в Edge, потому что это её браузер. К тому же, такой настройки не существует, как я позже узнал.
«Ну, тогда, возможно, браузер добавил её автоматически. Но в какой момент?» Я начал искать в Google, просматривая разные веб-страницы, сообщения StackOverflow и форумы. Чем больше я искал, тем больше мне становилось любопытно разобраться в этом. И вот наконец — НАКОНЕЦ — ответ на пост на Reddit дал мне довольно весомый намёк.
Но так ли это было на самом деле? Был только один способ узнать. 🚀 Запустил Edge и начал загрузку. 1, 2, 3, … 10, … 42, … 99 раз. А затем что-то волшебное 🪄 произошло на 102-й раз! Вместо того, чтобы набрать число, Edge добавил временную метку 😯 Бинго! 🎉 Тайна была решена. Это все объяснило.
Поэтому, чтобы сделать это более научным и для целей этого поста, я решил повторить упражнение в других браузерах. Вот несколько скриншотов.
Загрузка одного и того же файла 102+ раз в Chrome выдаёт такую же отработку в имени файла, что и в Edge.
Firefox просто продолжает увеличивать счётчик. Здесь нет временной метки. Также обратите внимание, что между именем файла и счётчиком в скобках нет пробела, как в Edge/Chrome.
Если вы хотите попробовать сами, то Dzhavat подготовил архив zip с пустым текстовым файлом. Скачивайте его, 102 раза, конечно, проверяя другие браузеры.