Zur Verwendung in einem Javascript oder zum Speichern auf einer Festplatte?
Remy
Ich möchte über jQuery.ajax darauf zugreifen (URL: ...
Lea Hayes
2
Wenn Sie hinzufügen, dass der lokale IIS nach einer Auflistung bei Ihrer nächsten Bereitstellung möglicherweise einen 500-Server-Fehler aus einer doppelten Auflistung auslöst, kommentieren Sie ihn aus.
Vergessen Sie nicht, IIS nach der Änderung neu zu starten.
UPDATE: Es gibt einfache Möglichkeiten, dies unter IIS7 und neuer zu tun. Die Operation hat speziell um IIS6-Hilfe gebeten, daher lasse ich diese Antwort unverändert. Aber diese Antwort bekommt immer noch viel Verkehr, obwohl IIS6 jetzt sehr alt ist. Hoffentlich verwenden Sie etwas Neueres. Wenn Sie ein neueres IIS7 oder eine neuere Version haben, finden Sie in der Antwort von @ ProVega unten eine einfachere Lösung für diese neueren Versionen.
Prost, aber dies ist auf einem Shared Hosting-Paket ohne Zugriff auf etwas anderes als web.config oder globale Codedatei
Lea Hayes
Wenn Sie keinen Zugriff auf die IIS 6.0-Einstellungen haben und der Support Ihres Anbieters den MIME-Typ nicht für Sie hinzufügt, müssen Sie den Anbieter oder auf neuere Server mit IIS 7.0 auf diesem Anbieter wechseln, wenn dieser dies anbietet unterstütze dies.
Jon Adams
1
Ja, ASP.Net kann die Datei über einen ASPX-Handler oder sogar eine einfache Seite weiterleiten, aber Sie können den .json-Dateityp in der URL nicht verwenden, da diese Anforderung nicht an ASP.Net weitergeleitet wird Laufzeit. Es muss etwas sein, das die ASPX-Laufzeit durchläuft. Wenn Sie keinen Zugriff auf IIS-Einstellungen haben, muss es sich um eine der vorhandenen Erweiterungen handeln .ASPX. Auch hier bietet der Wechsel zu einem Server mit IIS7 viele weitere und einfachere Lösungen.
Jon Adams
1
Ein Neustart des App-Pools sollte ausreichen (in meinem Fall), anstatt IIS insgesamt neu zu starten.
27.
1
@kltft Richtig, ein Apppool-Neustart löst das Update aus, aber natürlich nur für diesen Pool. Diese Schritte umfassen das Ändern der Einstellung für alle Benutzer, und das Festlegen einer inkonsistenten Einstellungsebene kann später leicht zu Verwirrung führen. Ich empfehle, den gesamten Prozess aus Sicherheits- und Gesundheitsgründen neu zu starten. Aber zur Not könnte ein Neustart des Apppools funktionieren, wenn alle den Vor- und Nachteilen zustimmen.
Jon Adams
211
Wenn Sie Ihrer Site manuell Unterstützung hinzufügen möchten, können Sie Ihrer web.config im Abschnitt system.webServer einfach Folgendes hinzufügen :
Ihre Antwort wurde aktualisiert und enthält nun den vollständigen web.configPfad.
GFoley83
Lebensretter, danke :)
Gaurav123
1
Aus irgendeinem Grund hat dies meine gesamte Website durcheinander gebracht - CSS hat nicht mehr funktioniert!
TheJeff
@TheJeff - das ist mir passiert, aber es liegt daran, dass ich zwei staticContent-MimeMaps hinzugefügt habe, eine für JSON (erforderlich) und eine für CSV (redundant, ich nahm an, dass dies erforderlich war, aber die IISExpress-Anwendungskonfiguration hatte bereits CSV). Daher habe ich diesen Fehler jedes Mal erhalten, wenn ich versucht habe, auf eine statische Datei zuzugreifen: Cannot add duplicate collection entry of type 'mimeMap' with unique key attribute 'fileExtension' set to '.csv' Sobald ich das Duplikat entfernt habe, kein Problem.
Die rote Erbse
1
Dadurch wird das Problem behoben, wenn Sie lokal ausgeführt werden. Achten Sie jedoch beim Live-Push darauf. Wenn die mimeMap bereits global in IIS konfiguriert ist, werden 500 Fehler angezeigt. Entfernen Sie in diesem Fall einfach dieses Teil aus Ihrer web.config.
Evan
20
Die Lösung besteht darin, dass Sie den Mson-Dateierweiterungstyp in MIME-Typen hinzufügen müssen
Methode 1
Gehen Sie zu IIS, wählen Sie Ihre Anwendung aus und suchen Sie nach MIME-Typen
Klicken Sie im rechten Bereich auf Hinzufügen
Dateinamenerweiterung = .json
MIME-Typ = application / json
Nach dem Hinzufügen .json Dateitypen in MIME - Typ , IIS neu starten und versuchen , dem Zugriff auf JSON - Datei
Methode 2
Gehen Sie zu web.config dieser Anwendung und fügen Sie diese Zeilen hinzu
Wenn Sie Unterstützung für Mimetyp hinzufügen (wie von @ProVega vorgeschlagen), empfiehlt es sich auch, den Typ vor dem Hinzufügen zu entfernen. Dies verhindert unerwartete Fehler bei der Bereitstellung auf Servern, auf denen bereits Unterstützung für den Typ vorhanden ist, z.
Wenn Sie nur die mimeMap hinzufügen, werden manchmal Ihre CSS-Stile entfernt. Der richtige Weg ist also, sie zuerst zu entfernen, vielen Dank
sgrysoft
Pfad zur Konfigurationsdatei in der IIS7- C:\Windows\System32\inetsrv\configDatei: applicationHost.config
OO
5
Hatte gerade dieses Problem, musste aber die Konfiguration für IIS Express finden, damit ich die MIME-Typen hinzufügen konnte. Für mich befand es sich bei C:\Users\<username>\Documents\IISExpress\config\applicationhost.configund ich konnte dort die richtige "Pantomime-Karte" hinzufügen.
Dies kann der Grund sein, warum es bei mir nicht über IIS Express funktioniert. Leider möchte ich dies nicht auf jedem Entwicklungscomputer konfigurieren müssen. Es sieht also so aus, als würde ich empfehlen, die JS-Erweiterung für JSON-Konfigurationsdateien beizubehalten.
@ SimchaKhabinsky Für mich war die web.config nicht genug.
Jean-Bernard Pellerin
3
Wenn die web.config nicht ausreicht, müssen Sie diese Zeile möglicherweise vor dem <mimeMap>Knoten hinzufügen : <remove fileExtension=".json" />. Sie sollten nicht die applicationhost.config (oder machine.config) berühren müssen. Das Ändern dieser Dateien kann jedoch nützlich sein, wenn Sie häufig neue Websites erstellen und nicht die web.config für jede Website ändern müssen. Das mag für Entwicklungsumgebungen funktionieren, aber häufig können Sie die machine.config in Produktionsumgebungen nicht berühren. Daher würde ich dennoch empfehlen, die Änderung in der web.config vorzunehmen.
Gilly3
1
Danke @ gilly3 - das removewar der Schlüssel für mich
harriyott
0
Navigieren Sie zu C: \ Benutzer \ Benutzername \ Dokumente \ IISExpress \ config
Öffnen Sie applicationhost.config mit Visual Studio oder Ihrem bevorzugten Texteditor.
Suchen Sie nach dem Wort mimeMap, Sie sollten viele von ihnen finden.
Fügen Sie die folgende Zeile oben in die Liste ein :.
Antworten:
Hinzufügen des JSON-MIME-Typs zu IIS 6. Befolgen Sie die Anweisungen unter MSDN Configure MIME Types (IIS 6.0) .
Vergessen Sie nicht, IIS nach der Änderung neu zu starten.
UPDATE: Es gibt einfache Möglichkeiten, dies unter IIS7 und neuer zu tun. Die Operation hat speziell um IIS6-Hilfe gebeten, daher lasse ich diese Antwort unverändert. Aber diese Antwort bekommt immer noch viel Verkehr, obwohl IIS6 jetzt sehr alt ist. Hoffentlich verwenden Sie etwas Neueres. Wenn Sie ein neueres IIS7 oder eine neuere Version haben, finden Sie in der Antwort von @ ProVega unten eine einfachere Lösung für diese neueren Versionen.
quelle
.ASPX
. Auch hier bietet der Wechsel zu einem Server mit IIS7 viele weitere und einfachere Lösungen.Wenn Sie Ihrer Site manuell Unterstützung hinzufügen möchten, können Sie Ihrer web.config im Abschnitt system.webServer einfach Folgendes hinzufügen :
Dadurch wird eine "lokale" Konfiguration unter IIS hinzugefügt. Dies funktioniert nicht in IIS6, aber in IIS7 und neueren Versionen.
quelle
web.config
Pfad.Cannot add duplicate collection entry of type 'mimeMap' with unique key attribute 'fileExtension' set to '.csv'
Sobald ich das Duplikat entfernt habe, kein Problem.Die Lösung besteht darin, dass Sie den Mson-Dateierweiterungstyp in MIME-Typen hinzufügen müssen
Methode 1
Gehen Sie zu IIS, wählen Sie Ihre Anwendung aus und suchen Sie nach MIME-Typen
Klicken Sie im rechten Bereich auf Hinzufügen
Dateinamenerweiterung = .json
MIME-Typ = application / json
Nach dem Hinzufügen .json Dateitypen in MIME - Typ , IIS neu starten und versuchen , dem Zugriff auf JSON - Datei
Methode 2
Gehen Sie zu web.config dieser Anwendung und fügen Sie diese Zeilen hinzu
quelle
Wenn Sie Unterstützung für Mimetyp hinzufügen (wie von @ProVega vorgeschlagen), empfiehlt es sich auch, den Typ vor dem Hinzufügen zu entfernen. Dies verhindert unerwartete Fehler bei der Bereitstellung auf Servern, auf denen bereits Unterstützung für den Typ vorhanden ist, z.
quelle
C:\Windows\System32\inetsrv\config
Datei: applicationHost.configHatte gerade dieses Problem, musste aber die Konfiguration für IIS Express finden, damit ich die MIME-Typen hinzufügen konnte. Für mich befand es sich bei
C:\Users\<username>\Documents\IISExpress\config\applicationhost.config
und ich konnte dort die richtige "Pantomime-Karte" hinzufügen.quelle
<mimeMap>
Knoten hinzufügen :<remove fileExtension=".json" />
. Sie sollten nicht die applicationhost.config (oder machine.config) berühren müssen. Das Ändern dieser Dateien kann jedoch nützlich sein, wenn Sie häufig neue Websites erstellen und nicht die web.config für jede Website ändern müssen. Das mag für Entwicklungsumgebungen funktionieren, aber häufig können Sie die machine.config in Produktionsumgebungen nicht berühren. Daher würde ich dennoch empfehlen, die Änderung in der web.config vorzunehmen.remove
war der Schlüssel für michquelle