这是与this相同的问题,但我正在寻找一种经典的ASP解决方案。
我有第三方控件来提供安全下载,但它希望您提供response.contenttype值。我正在尝试使用以下内容进行浏览器提示:
Response.AddHeader“Content-Disposition”,“attachment; filename =”“”& strFileName& “” “”
然而,Safari不喜欢任何建议的内容类型(文件名很奇怪 - 比如添加“.exe”到最后)。
所以我要么向IIS查询正确的内容类型,要么找到一个通用的内容类型,让浏览器以一种可靠的方式解决它。
答案 0 :(得分:0)
通常,网站使用的mimemap存储在服务器级别,您可以在尝试阅读时遇到权限问题。它需要一些令人讨厌的ADSI代码。
您是否尝试过标准application/octet-stream
作为mime类型?
答案 1 :(得分:0)
From Reading the server mimemap:
Public Function GetMimeType(ByVal Extension)
Dim oMimeMap
Dim vntMimeType
Dim avntMap()
Set oMimeMap = GetObject("IIS://LocalHost/MimeMap")
If Left(Extension, 1) <> "." Then Extension = "." & Extension
avntMap() = oMimeMap.MimeMap
For Each vntMimeType In avntMap
If vntMimeType.Extension = Extension Then
GetMimeType = vntMimeType.MimeType
Exit For
End If
Next
If GetMimeType = "" Then GetMimeType = "application/octet-stream"
End Function
注意:调用GetObject
的代码必须是WWW服务主机属性中的运营商。