Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 44999|Antwort: 4

[ASP.NET] asp.net MVC erlaubt eine Methode des einzelnen Controllers, Domänen zu überqueren

[Link kopieren]
Veröffentlicht am 31.07.2018 10:13:37 | | | |
Was ist Cors?

CORS ist ein W3C-Standard, der für "Cross-origin resource sharing" steht.
Er ermöglicht es dem Browser, XMLHttpRequest-Anfragen an Cross-Origin-Server zu stellen und so die Einschränkung zu überwinden, dass AJAX nur homogen verwendet werden kann.

1. Einleitung

CORS benötigt sowohl Browser- als auch Serverunterstützung. Derzeit unterstützen alle Browser diese Funktion, und der IE-Browser kann nicht niedriger als IE10 sein.

Der gesamte CORS-Kommunikationsprozess wird automatisch vom Browser abgeschlossen und erfordert keine Benutzerbeteiligung. Für Entwickler unterscheidet sich die CORS-Kommunikation nicht von der homologen AJAX-Kommunikation, und der Code ist genau derselbe. Sobald der Browser feststellt, dass eine AJAX-Anfrage die Quelle überschreitet, fügt er automatisch zusätzliche Header-Informationen hinzu und manchmal eine weitere Anfrage, aber der Nutzer wird sie nicht spüren.

Daher ist der Schlüssel zur CORS-Kommunikation der Server. Solange der Server die CORS-Schnittstelle implementiert, kann er über Quellen hinweg kommunizieren.

Tatsächlich können Webserverprogramme (wie ASP.NET oder PHP usw.) nicht unterscheiden und verwalten nicht, ob eine eingehende HTTP-Anfrage eine domänenübergreifende Ajax-Anfrage ist.CORS ist darauf ausgelegt, dieses Problem zu lösen, und der W3C-Custom-CORS-Standard gibt Browsern einen Mechanismus, um Ajax-Cross-Domain-Anfragen zu ermöglichen.

2: Nativer JS-Ajax-Anforderungscode

Da ich jQuery nicht referenzieren möchte, habe ich die folgenden Methoden mit js wie folgt kapselt:

Ajax fordert Schnittstellentests an und findet einen Fehler wie folgt:




Drittens: Setzen Sie eine Controller-Methode, die domänenübergreifende Systeme erlaubt

MittelmäßigAlle sind erlaubtDie Controller- oder API-Methode ist domänenübergreifend, in der Web.config-Dateisystem.webServerDie folgende Konfiguration wird unter dem Knoten hinzugefügt:

Das oben Genannte ist nicht das Ergebnis, das wir wollten! Wenn wir nur einem Domainnamen erlaubt wollen, auf eine unserer Schnittstellen über verschiedene Domänen hinweg zuzugreifen, müssen wir ein Merkmal definieren, das so aussieht:

Der Code zur Einstellung von domänenübergreifenden Zugriffsberechtigungen lautet dieser Absatz: HttpContext.Response.AppendHeader ("Access-Control-Allow-Origin", origin);

Wir legen die Eigenschaften über die Steuerungsmethode wie folgt fest:

Wir initiieren die Ajax-Anfrage erneut mit dem Ergebnis wie unten gezeigt:



API-Schnittstellenressourcen von unseren anderen Webseiten können erfolgreich abgerufen werden.

(Ende)





Vorhergehend:Hallo zusammen{:1_7:}
Nächster:CSS-Text ist jenseits der beiden Methoden verborgen
 Vermieter| Veröffentlicht am 17.06.2019 14:23:05 |
HTTP-Anfragemethoden sind nicht nur GET und POST, sondern auch die am häufigsten verwendeten. Laut RFC2616 Standard (aktuelles HTTP/1.1) gibt es üblicherweise 8 Methoden: OPTIONS, POST, PUT, DELETE, TRACE und CONNECT.

Die OPTIONS-Anfragemethode hat zwei Hauptanwendungen:

1. Die vom Server unterstützte HTTP-Anforderungsmethode zu erhalten; Es ist auch eine Methode, die oft von Hackern verwendet wird.

2. Wird verwendet, um die Leistung des Servers zu überprüfen. Zum Beispiel muss AJAX, wenn es eine domänenübergreifende Anfrage stellt, einen HTTP OPTIONS-Header an die Ressource eines anderen Domainnamens senden, um zu bestimmen, ob die tatsächliche Anfrage sicher ist.
 Vermieter| Veröffentlicht am 04.11.2019 17:29:52 |
jquery.min.js:2 Cross-Origin Read Blocking (CORB) blocked cross-origin response http://192.168.252.193:2019/home/testmit MIME-ähnlicher Anwendung/JSON. Siehehttps://www.chromestatus.com/feature/5629709824032768Für weitere Details.
 Vermieter| Veröffentlicht am 19.01.2020 15:33:23 |

Veröffentlicht am 12.11.2021 15:59:52 |
Gut geschrieben, gelehrt
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com