Question

Il s'agit de la même question que this mais je recherche une solution ASP classique.

Je dispose d'un contrôle tiers pour fournir des téléchargements sécurisés, mais il s'attend à ce que vous fournissiez la valeur response.contenttype. J'essaie d'avoir l'invite du navigateur avec les éléments suivants:

Response.AddHeader "Content-Disposition", "pièce jointe; nom_fichier =" " " & amp; strFileName & amp; """

Cependant, Safari n’apprécie aucun des types de contenu suggérés (fait des choses étranges avec le nom de fichier - comme ajouter ".exe" à la fin).

  • application / x-msdownload
  • application / force-download

Je voudrais donc interroger IIS pour connaître le type de contenu correct ou trouver un type de contenu générique qui permettrait au navigateur de le comprendre de manière assez fiable.

Était-ce utile?

La solution

Généralement, le mimemap utilisé par le site est stocké au niveau du serveur et vous pouvez rencontrer des problèmes d’autorisation en essayant de le lire. Il nécessite un code ADSI méchant.

Avez-vous essayé le application / octet-stream standard en tant que type mime?

Autres conseils

À partir de la lecture du mimemap du serveur :

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

Remarque: le code appelant GetObject doit obligatoirement être un opérateur dans les propriétés du maître de service WWW.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top