128 votes

Comment autoriser le téléchargement d'un fichier .json avec ASP.NET ?

Comment puis-je activer le téléchargement de fichiers *.json à partir d'un ancien site ASP.NET (IIS6, je crois) ?

Je reçois une page 404 au lieu du fichier JSON.

Dois-je créer un fichier web.config ? Que doit-il contenir ?

218voto

ProVega Points 1425

Si vous souhaitez ajouter manuellement la prise en charge à votre site, vous pouvez simplement ajouter ce qui suit à votre web.config dans le champ system.webServer section :

<staticContent>
    <mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>

Cela ajoutera une configuration "locale" sous IIS. Cela ne fonctionne pas avec IIS6, mais fonctionne avec IIS7 et les versions plus récentes.

122voto

Jon Adams Points 8637

Ajoutez le type MIME JSON à IIS 6. Suivez les instructions à l'adresse suivante Configurer les types MIME de MSDN (IIS 6.0) .

  • Extension : .json
  • Type MIME : application/json

N'oubliez pas de redémarrer IIS après la modification.

MISE À JOUR : Il existe des moyens faciles de faire cela sur IIS7 et plus récents. Le client a spécifiquement demandé de l'aide pour IIS6, donc je laisse cette réponse telle quelle. Mais cette réponse reçoit encore beaucoup de trafic même si IIS6 est très vieux maintenant. J'espère que vous utilisez quelque chose de plus récent, donc je voulais mentionner que si vous avez une version plus récente de IIS7 ou plus récente, voir la réponse de @ProVega ci-dessous pour une solution plus simple pour ces versions plus récentes.

20voto

Kaushal Khamar Points 2047

La solution est que vous devez ajouter le type d'extension de fichier json dans les types MIME.

Méthode 1

Allez dans IIS, sélectionnez votre application et trouvez les types MIME.

enter image description here

Cliquez sur Ajouter dans le panneau de droite

Extension du nom de fichier = .json

Type MIME = application/json

enter image description here

Après avoir ajouté .json type de fichier dans Types MIME , Redémarrer IIS et essayer d'accéder au fichier json


Méthode 2

Allez dans le web.config de cette application et ajoutez-y les lignes suivantes

 <system.webServer>
   <staticContent>
     <mimeMap fileExtension=".json" mimeType="application/json" />
   </staticContent>
 </system.webServer>

17voto

Mark Cooper Points 2097

Lorsque vous ajoutez la prise en charge de mimetype (comme suggéré par @ProVega), il est également préférable de supprimer le type avant de l'ajouter - ceci afin d'éviter des erreurs inattendues lors du déploiement sur des serveurs où la prise en charge du type existe déjà, par exemple :

<staticContent>
    <remove fileExtension=".json" />
    <mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>

5voto

longda Points 1859

Je viens de rencontrer ce problème mais j'ai dû trouver la configuration de IIS Express pour pouvoir ajouter les types de mime. Pour moi, elle était située à C:\Users\<username>\Documents\IISExpress\config\applicationhost.config et j'ai pu y ajouter le bon "mime map".

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X