ASP / IIS6 classico: come cercare nella mappa mime del server?
-
19-08-2019 - |
Domanda
Questa è la stessa domanda di this ma sto cercando una soluzione ASP classica.
Ho un controllo di terze parti per fornire download sicuri ma si aspetta che tu fornisca il valore response.contenttype. Sto cercando di avere il prompt del browser con il seguente:
Response.AddHeader " Content-Disposition " ;, " allegato; nomefile = " " " & Amp; strFileName & amp; & Quot; " " "
Tuttavia a Safari non piacciono i tipi di contenuto suggeriti (fa cose strane con il nome del file, come aggiungere " .exe " alla fine).
- application / x-msdownload
- application / forza-download
Quindi vorrei interrogare IIS per il tipo di contenuto corretto o trovare un tipo di contenuto generico che consentirebbe al browser di capirlo in modo abbastanza affidabile.
Soluzione
In genere la mimemap utilizzata dal sito viene archiviata a livello di server e si possono ottenere problemi di autorizzazione nel tentativo di leggerlo. Richiede un brutto codice ADSI.
Hai provato l'applicazione standard / octet-stream
come tipo mime?
Altri suggerimenti
Dalla lettura della mimemap del server :
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
Nota: il codice che chiama GetObject
deve essere un operatore nelle proprietà del master del servizio WWW.