Es besteht kein Zweifel, dass application/json
der beste MIME- Typ für eine JSON-Antwort ist.
Aber ich hatte einige Erfahrungen, die ich application/x-javascript
aufgrund einiger Komprimierungsprobleme verwenden musste. Meine Hosting-Umgebung ist Shared Hosting mit GoDaddy . Sie erlauben mir nicht, Serverkonfigurationen zu ändern. Ich hatte der web.config
Datei den folgenden Code zum Komprimieren von Antworten hinzugefügt .
<httpCompression>
<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll"/>
<dynamicTypes>
<add mimeType="text/*" enabled="true"/>
<add mimeType="message/*" enabled="true"/>
<add mimeType="application/javascript" enabled="true"/>
<add mimeType="*/*" enabled="false"/>
</dynamicTypes>
<staticTypes>
<add mimeType="text/*" enabled="true"/>
<add mimeType="message/*" enabled="true"/>
<add mimeType="application/javascript" enabled="true"/>
<add mimeType="*/*" enabled="false"/>
</staticTypes>
</httpCompression>
<urlCompression doStaticCompression="true" doDynamicCompression="true"/>
Auf diese Weise wurden die ASPX-Seiten mit g-zip komprimiert, JSON-Antworten jedoch nicht. Ich fügte hinzu
<add mimeType="application/json" enabled="true"/>
in den Abschnitten statische und dynamische Typen. Dies komprimiert JSON-Antworten jedoch überhaupt nicht.
Danach habe ich diesen neu hinzugefügten Typ entfernt und hinzugefügt
<add mimeType="application/x-javascript" enabled="true"/>
in den Abschnitten für statische und dynamische Typen und änderte den Antworttyp in
.ashx (asynchroner Handler) zu
application/x-javascript
Und jetzt stellte ich fest, dass meine JSON-Antworten mit g-zip komprimiert wurden. Daher empfehle ich persönlich zu verwenden
application/x-javascript
Nur wenn Sie Ihre JSON-Antworten in einer gemeinsam genutzten Hosting-Umgebung komprimieren möchten . Da beim Shared Hosting die IIS- Konfigurationen nicht geändert werden können .