1

当我尝试在sensenet中下载文本文件时,文本文件将在浏览器中打开但没有下载,您能否就如何设置直接下载文本文件提出一些建议?

4

1 回答 1

3

它由浏览器处理。如果它可以打开某种文件类型,那么它将显示它而不是下载。

在服务器端,如果您的 http 处理程序在设置响应流时使用处置,您可以强制在您的网站上下载文件类型:

response.AppendHeader("Content-Disposition", "attachment");

使用 Sensenet,您必须编写自己的 http 处理程序或修改 SenseNetStaticFileHandler.cs 的 ProcessRequest。 MSDN对这个主题没有太大帮助,但您可以在此处找到一些相关信息。

在客户端还有另一种解决方案,如果您可以更改链接的 html 代码。使用 html5<a>标签有一个download属性,它强制链接文件下载而不是浏览器导航到它。如果浏览器支持它,它就可以工作。请参阅 HTML 下载属性。

于 2018-01-22T09:50:45.363 回答