Невозможно решить проблему контроля доступа
Это в значительной степени известная стандартная ошибка, но ее невозможно исправить, используя существующие сообщения Stackru.
XMLHttpRequest не может загрузить https://myserver.com/context/
Ответ на предполетный запрос не проходит проверку контроля доступа:
В запрошенном ресурсе отсутствует заголовок "Access-Control-Allow-Origin".
Происхождение " https://www.otherwebsite.com/" поэтому не допускается.
Ответ имел HTTP-код состояния 405.
Ниже приведен код, который я имею -
function setHeader(xhr) {
xhr.setRequestHeader("Access-Control-Allow-Origin", "*");
}
var url = "https://myserver.com/context/";
$.ajax({
url: url,
type: 'GET', dataType:'json',
success: function(data) {
_this.question(data.question);
_this.questionId(data.questionId);
_this.choices(data.choices);
}, error: function() {
console.log("ERROR in getting microquestion");
},
beforeSend: setHeader
});
1 ответ
Сообщение "Ответ на предпечатный запрос… имел код состояния HTTP 405." указывает, для начала, https://myserver.com/context/
Конечная точка должна быть настроена для обработки OPTIONS
правильно запрашивает - даже если он уже может быть настроен на отправку правильных заголовков CORS обратно для "обычных" запросов.
Для получения более подробной информации вы можете прочитать ответ в заголовке "Access-Control-Allow-Origin" на запрашиваемом ресурсе - при попытке получить данные из REST API- но суть в том, что сервер должен ответить как минимум в OPTIONS
запросы с 2xx
Код статуса успеха.