我已经将一些 exe 文件上传到数据库中,因为我不希望它们可供公开访问。我尝试使用链接按钮和通用处理程序来使用以下代码提供文件:
Context.Response.Clear()
Context.Response.ContentType = "application/exe"
Context.Response.AppendHeader("Content-Disposition", "filename=program.exe")
Context.Response.BinaryWrite(binaryfile)
问题:谷歌浏览器不会将下载视为任何其他 exe,而是在下载后报告“program.exe 不常见下载,可能很危险”。带有“放弃”按钮和“保留”下载的选项隐藏在上下文菜单下。
有没有其他/更好的方法来提供存储在数据库中的 exe 文件?
我不常见到application/exe
在野外。比较常用的是application/octet-stream
对于可执行文件。
如果您使用 .NET,那么我将暂时假设您使用 IIS。 (如果情况并非如此,请纠正我。)如果是这样,那么这个(旧的,但仍然有用)MIME 类型和文件扩展名列表 http://technet.microsoft.com/en-us/library/bb742440.aspx可能会有帮助。
当然,您将无法真正绕过服务器端的任何浏览器端限制。您可以修改发送给客户端的标头,但最终由客户端决定如何处理响应。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)