Я немного искал источники firefox в netwerk / protocol / data / nsDataHandler.cpp
обработчик данных анализирует только содержимое / тип и кодировку и проверяет, есть ли в строке "; base64"
rfc не определяет имя файла и, по крайней мере, firefox не обрабатывает имя файла для него, код генерирует случайное имя плюс ".part"
Я также проверил журнал Firefox
[b2e140]: DOCSHELL 6e5ae00 InternalLoad data:application/octet-stream;base64,SGVsbG8=
[b2e140]: Found extension '' (filename is '', handling attachment: 0)
[b2e140]: HelperAppService::DoContent: mime 'application/octet-stream', extension ''
[b2e140]: Getting mimeinfo from type 'application/octet-stream' ext ''
[b2e140]: Extension lookup on '' found: 0x0
[b2e140]: Ext. lookup for '' found 0x0
[b2e140]: OS gave back 0x43609a0 - found: 0
[b2e140]: Searched extras (by type), rv 0x80004005
[b2e140]: MIME Info Summary: Type 'application/octet-stream', Primary Ext ''
[b2e140]: Type/Ext lookup found 0x43609a0
интересные файлы, если вы хотите посмотреть исходники Mozilla:
data uri handler: netwerk/protocol/data/nsDataHandler.cpp
where mozilla decides the filename: uriloader/exthandler/nsExternalHelperAppService.cpp
InternalLoad string in the log: docshell/base/nsDocShell.cpp
Думаю, вы можете пока прекратить поиск решения, потому что подозреваю, что его нет :)
как отмечено в этой теме, html5 имеет атрибут download
, он также работает в firefox 20 http://www.whatwg.org/specs/web-apps/current-work/multipage/links.html#attr-hyperlink-download
person
sherpya
schedule
05.06.2011
data:application/pdf;name=document.pdf;base64,BASE64_DATA_ENCODED
- person mems   schedule 03.04.2017