Примечание к моду: вопрос о том, почему XMLHttpRequest/fetch/и т. д. в браузере подпадают под действие одной и той же политики доступа (вы получаете ошибки с упоминанием CORB или CORS), а Postman — нет. Этот вопрос не о том, как исправить ошибку «Нет 'Access-Control-Allow-Origin'...». Речь идет о том, почему они происходят.
Пожалуйста, прекратите публиковать сообщения:
- Конфигурации CORS для всех существующих языков и платформ. Вместо этого найдите вопрос о соответствующем языке/платформе.
- Сторонние службы, которые позволяют запросу обходить CORS.
- Параметры командной строки для отключения CORS для различных браузеры
Я пытаюсь выполнить авторизацию с помощью JavaScript, подключившись к RESTful API встроенная колба. Однако когда я делаю запрос, я получаю следующую ошибку:
XMLHttpRequest cannot load http://myApiUrl/login.
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Origin 'null' is therefore not allowed access.
Я знаю, что API или удаленный ресурс должны установить заголовок, но почему это сработало, когда я сделал запрос через расширение Chrome Postman?
Это код запроса:
$.ajax({
type: 'POST',
dataType: 'text',
url: api,
username: 'user',
password: 'pass',
crossDomain: true,
xhrFields: {
withCredentials: true,
},
})
.done(function (data) {
console.log('done');
})
.fail(function (xhr, textStatus, errorThrown) {
alert(xhr.responseText);
alert(textStatus);
});
Подробнее здесь: https://stackoverflow.com/questions/200 ... n-header-i