Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 44999|Ответ: 4

[ASP.NET] asp.net MVC позволяет методу одного контроллера пересекать домены

[Скопировать ссылку]
Опубликовано 31.07.2018 10:13:37 | | | |
Что такое Корс?

CORS — это стандарт W3C, который расшифровывается как «Cross-origin resource sharing (Cross-origin resource sharing shareing).
Он позволяет браузеру отправлять запросы 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 является кроссдоменным, в файле web.configsystem.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 на ресурс другого доменного имени, чтобы определить, насколько защищён фактический запрос.
 Хозяин| Опубликовано 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/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