【问题标题】:Download dotfile using html5 download preserving name使用html5下载保留名称下载dotfile
【发布时间】:2016-08-13 10:52:05
【问题描述】:

我有一个目录结构,包含目录和文件的列表。 我想给用户一个下载文件的选项。对于下载,我使用HTML5 download 属性。效果很好。

但我的目录结构也可以有点文件,例如:.babelrc.gitignore.eslintrc 等。

当我使用相同的技术下载此类文件时,正在下载具有相同内容的文件,但该文件不再是点文件。下载后,假设.gitignore,文件变为gitignore.txt

我在我的项目中使用它github-plus - Chrome 扩展程序显示每个文件的大小、下载链接和复制其内容的选项

任何帮助将不胜感激。

我正在使用这种格式: <a href="https://raw.githubusercontent.com/softvar/secure-ls/master/.babelrc" title="Download File" download=".babelrc">Download</a>

JSFIDDLE DEMO

【问题讨论】:

    标签: html download attributes dotfiles


    【解决方案1】:

    downloading resources 上引用 HTML5 规范和 download 属性,关于文件类型/扩展名:

    如果声明的类型已知,则更改文件名以添加与声明的类型对应的扩展名。

    否则,如果已知命名类型具有潜在危险(例如,它将被平台约定视为本机可执行文件、shell 脚本、HTML 应用程序或可执行宏的文档),则可以选择更改文件名以添加已知安全的扩展名(例如“.txt”)。

    看来:

    • 最终选择文件名的算法部分是平台相关
    • 如果扩展名未被识别,例如 dotfiles,浏览器将尝试使用文件 MIME 类型来确定它
    • dotfiles 可能被视为潜在有害,因为它们是各种平台上的隐藏文件。这似乎就是您的情况,删除了初始点并附加了 .txt 扩展名。

    【讨论】:

    • 这是一些有用的信息。没有任何黑客/解决方法吗?
    • 我不知道,如果是这样的话,它可以并且将被视为泄漏。
    猜你喜欢
    • 2017-06-04
    • 1970-01-01
    • 2019-01-13
    • 2015-06-09
    • 2019-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-10
    相关资源
    最近更新 更多