Почему встроенные веб-ресурсы (например, изображения) можно кодировать только в Base 64? - PullRequest
0 голосов
/ 17 октября 2019

В Интернете много ресурсов, объясняющих , что означает Base 64, но я изо всех сил пытаюсь найти тот, который объясняет, почему для встроенных веб-ресурсов используется только Base 64. Я понимаю, что Base 64 - это формат, который был создан на заре Интернета, чтобы обеспечить безопасную передачу байтов через Интернет и сделать вывод читаемым для большинства кодировок, ограничив диапазон символов ASCII.

Тем не менее, веб-ресурсы, такие как html и css, не обязательно должны быть ограничены только 6-разрядным символьным пространством, верно (только мое предположение, поскольку для этих файлов могут быть определены пользовательские кодировки для них)? Так почему же никогда не было способа кодировать наши ресурсы, скажем, в UTF-8? Или набор символов, который может использовать все 8 бит в байте?

TL;DR

Прямо сейчас это возможно, если вы хотите вставить встроенное изображение в HTML-страницу.

<img src="data:image/png;base64,YWpmaXdlamZwaW9hamZvaWFqY3ZqcGFpc29kamFpb3Nkam5pZGNqdmR2ZA==">

Но почему бы не сделать что-то подобное? Использование 8-битной кодировки позволило бы тем же файлам занимать значительно меньше места.

<img src="data:image/png;utf-8,abcdefghijklmnopabcdefghijklmnopabcdefghij">
...