我在我网站的根目录创建了一个 CHANGELOG.md 文件,并在 Iframe 中使用它在模态窗口中显示它:
<iframe src="/CHANGELOG.md" frameborder="0" height="100%" width="100%"></iframe>
如何防止在 iframe 中下载文本文件?
在 FireFox 上下载文件。在 Chrome 上它没有被下载,但我在控制台中有这个警告:
<块引用>资源被解释为 Document 但以 MIME 类型传输 文本/降价:“https://www.example.fr/CHANGELOG.md”。
文件内容显示正常,但为什么文件下载到某些网络浏览器?
这个小问题我已经解决了好几天了,但没有解决办法。
答案 0 :(得分:0)
HTTP 响应带有一个 Content-Type
标头,用于告诉客户端响应中的数据类型。
正确配置的服务器会说 Markdown URL 的类型为 text/markdown
,而 HTML URL 的类型为 text/html
。
当浏览器得到响应时,它决定如何处理它。通常,如果资源是它可以理解的类型(因此所有浏览器都支持 HTML 文档),它会内联呈现资源,并下载它没有内置支持的资源。
有时浏览器会对文件进行内容嗅探,确定内容类型有误,然后区别对待。
Chrome 正在(错误地)这样做,而 Firefox 则没有。
解决方案是以浏览器可以理解的格式呈现数据。
对于 Markdown,两个明显的选项是:
text/plain
。 (您也可以将文件重命名为 .txt
)