Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 44999|Odpověď: 4

[ASP.NET] asp.net MVC umožňuje jednu metodu řadění mezi doménami

[Kopírovat odkaz]
Zveřejněno 31.07.2018 10:13:37 | | | |
Co je to Cors?

CORS je standard W3C, což znamená "sdílení zdrojů napříč zdroji".
Umožňuje prohlížeči posílat požadavky XMLHttpRequest na servery napříč původem, čímž překonávají omezení, že AJAX lze používat pouze homogenně.

1. Úvod

CORS vyžaduje podporu jak prohlížeče, tak serveru. V současnosti tuto funkci podporují všechny prohlížeče a prohlížeč IE nesmí být nižší než IE10.

Celý komunikační proces CORS je automaticky realizován prohlížečem a nevyžaduje účast uživatele. Pro vývojáře není komunikace CORS ničím odlišná od homologní AJAX komunikace a kód je zcela stejný. Jakmile prohlížeč zjistí, že požadavek AJAX prochází zdrojem, automaticky přidá další informace v hlavičce, a někdy i další požadavek, ale uživatel to nepocítí.

Klíčem k dosažení komunikace CORS je tedy server. Pokud server implementuje rozhraní CORS, může komunikovat napříč zdroji.

Ve skutečnosti webové serverové programy (jako ASP.NET nebo PHP atd.) nedokážou rozlišit a nebudou spravovat, zda příchozí HTTP požadavek je Ajax požadavek napříč doménami.CORS je navržen tak, aby tento problém vyřešil, a vlastní standard CORS W3C poskytuje prohlížečům mechanismus pro povolení požadavků Ajaxu napříč doménami.

2: Nativní kód požadavku pro JS Ajax

Protože nechci odkazovat na jQuery, zapouzdřil jsem následující metody pomocí js, a to následovně:

Ajax požádá o testování rozhraní a najde chybu následovně:




Za třetí: Nastavte metodu řadiče tak, aby umožnila cross-domain

Nic mocVšichni jsou povoleniMetoda řadiče nebo API je cross-domain, v souboru web.configsystem.webServerPod uzlem je přidána následující konfigurace:

Výše uvedené není výsledek, který jsme chtěli! Pokud chceme povolit přístup pouze doménovému jménu k jednomu z našich rozhraní napříč doménami, musíme definovat funkci, která vypadá takto:

Kód pro nastavení oprávnění přístupu napříč doménami je tento odstavec HttpContext.Response.AppendHeader("Access-Control-Allow-Origin", origin);

Charakteristiky nastavujeme nad řídicí metodou následovně:

Znovu zahajujeme požadavek Ajaxu s výsledkem, jak je uvedeno níže:



API rozhraní z našich ostatních webových stránek jsou úspěšně přístupné.

(Konec)





Předchozí:Ahoj všichni{:1_7:}
Další:CSS text je skrytý za těmito dvěma metodami
 Pronajímatel| Zveřejněno 17.06.2019 14:23:05 |
HTTP metody požadavků nejsou pouze GET a POST, ale jsou to jen nejčastěji používané metody. Podle RFC2616 standardu (aktuální HTTP/1.1) je obvykle 8 metod: OPTIONS,, POST, PUT, DELETE, TRACE a CONNECT.

Metoda žádosti OPTIONS má dva hlavní využití:

1. Zajistit, aby server podporoval HTTP požadavkovou metodu; Je to také metoda často používaná hackery.

2. Používá se ke kontrole výkonu serveru. Například když AJAX odesílá požadavek napříč doménami, musí poslat HTTP OPTIONS hlavičku do zdroje jiné domény, aby zjistil, zda je skutečný požadavek bezpečný.
 Pronajímatel| Zveřejněno 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/tests MIME typem aplikace/json. Vizhttps://www.chromestatus.com/feature/5629709824032768pro více informací.
 Pronajímatel| Zveřejněno 19.01.2020 15:33:23 |

Zveřejněno 12.11.2021 15:59:52 |
Dobře napsané, učené
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com