Почему при включенной загрузке <a>данные файла могут храниться в href? - PullRequest
0 голосов
/ 13 апреля 2019

Наличие загружаемого файла в HTML5 довольно просто в коде.

<a href="/files/whateverFile.txt" download="fileNameForUser.txt">

Это берет файл в местоположении href и передает его в ОС для загрузки этого файла с именем файла в параметре download = "fileName".

Чего я не понимаю, так это когда вы делаете

<a href="data:application/txt;charset=utf-8,theseAreTheFileContents" download="fileName.txt">

Это попросит пользователя загрузить файл fileName.txt, в котором внутри содержится текст «theseAreTheFileContents». Данные находятся на самой странице, и браузер не ищет никаких других URL-адресов для требуемых данных.

Почему содержимое файла в href? Href рассказывает браузеру о местонахождении определенного ресурса. Почему бы не иметь больше полей в загружаемых якорях? Такие как

<a href="null" datatype="application/txt" charset="utf-8" data="theseAreFileContents" download="fileName.txt">

Разве это не ясно? Href не должен означать больше, чем одна конкретная вещь.

1 Ответ

0 голосов
/ 13 апреля 2019
URL-адреса схемы

data: представляют собой стандарт (предшествующий атрибуту download).

Они не были созданы для использования с якорными элементами (и чаще всего они встраивают небольшие изображения в файлы CSS).

Якорные элементы не были предназначены для связи со встроенными данными, они просто поддерживают их, потому что существует схема data:.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...