Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 44999|Отговор: 4

[ASP.NET] asp.net MVC позволява един контролер метод за преминаване между домейни

[Копирай линк]
Публикувано в 31.07.2018 г. 10:13:37 ч. | | | |
Какво е Корс?

CORS е стандарт W3C, който означава "Cross-origin resource sharering".
Позволява на браузъра да прави XMLHttpRequest заявки към сървъри с кръстен произход, като по този начин се преодолява ограничението, че AJAX може да се използва само хомогенно.

1. Въведение

CORS изисква поддръжка както на браузър, така и на сървър. В момента всички браузъри поддържат тази функция, а IE браузърът не може да бъде по-нисък от IE10.

Целият процес на комуникация чрез CORS се завършва автоматично от браузъра и не изисква участие на потребителя. За разработчиците комуникацията чрез CORS не се различава от хомоложната AJAX комуникация, а кодът е абсолютно същият. След като браузърът установи, че AJAX заявка преминава през източника, автоматично добавя допълнителна информация за заглавието, а понякога и още една заявка, но потребителят няма да я усети.

Следователно ключът към постигането на комуникация с CORS е сървърът. Докато сървърът реализира интерфейса на CORS, той може да комуникира между източници.

Всъщност уеб сървърните програми (като ASP.NET или PHP и др.) не могат да различават и няма да управляват дали входящата HTTP заявка е кросдомейн Ajax заявка.CORS е създаден да реши този проблем, а стандартът W3C по поръчка дава на браузърите механизъм за разрешаване на Ajax кросдомейн заявки.

2: Нативен JS код за заявка в Ajax

Тъй като не искам да се позовавам на jQuery, капсулирах следните методи с js, както следва:

Ajax заявява тестове на интерфейса и открива грешка, както следва:




Трето: Задайте контролер метод, който позволява крос-домейн

Горе-долуВсички са позволениКонтролерът или API методът е cross-domain, в web.config файлаsystem.webServerСледната конфигурация се добавя под възела:

Горното не е резултатът, който искахме! Ако искаме само домейн име да има достъп до един от нашите интерфейси между домейни, трябва да дефинираме функция, която да изглежда така:

Кодът за задаване на разрешения за достъп между домейни е следният параграф HttpContext.Response.AppendHeader ("Access-Control-Allow-Origin", origin);

Задаваме характеристиките върху метода на контролера по следния начин:

Инициираме заявката на Ajax отново с резултата, както е показано по-долу:



API интерфейсните ресурси от другите ни уебсайтове могат да бъдат успешно достъпени.

(Край)





Предишен:Здравейте на всички{:1_7:}
Следващ:CSS текстът е скрит отвъд двата метода
 Хазяин| Публикувано в 17.06.2019 г. 14:23:05 ч. |
Методите за HTTP заявки не са само GET и POST, но са най-често използваните. Според RFC2616 стандарт (настоящ HTTP/1.1), обикновено има 8 метода: OPTIONS,, POST, PUT, DELETE, TRACE и CONNECT.

Методът OPTIONS за заявка има две основни приложения:

1. Осигурете поддръжка на HTTP заявка от сървъра; Това е и метод, често използван от хакери.

2. Използва се за проверка на производителността на сървъра. Например, когато AJAX прави кросдомейн заявка, трябва да изпрати HTTP OPTIONS заглавие към ресурса на друго домейн име, за да определи дали действителната заявка е сигурна.
 Хазяин| Публикувано в 4.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/testс MIME тип приложение/json. Вижhttps://www.chromestatus.com/feature/5629709824032768за повече подробности.
 Хазяин| Публикувано в 19.01.2020 г. 15:33:23 ч. |

Публикувано в 12.11.2021 г. 15:59:52 ч. |
Добре написано, научено
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com