Im новый для переполнения стека и надеюсь, что я не допущу ошибки для моего первого сообщения.Django не разрешен Access-Control-Allow-Origin
Я получаю сообщение об ошибке: Происхождение ... не разрешено доступом-контролем-разрешить-Происхождение.
Из того, что я читал в других подобных сообщениях, это проблема с перекрестным доменом. Но вот что: case1: при запуске моего локального файла html, содержащего запрос ajax на сервер A, у меня нет pb. case2: при открытии этого же типа html, на этот раз, обслуживаемый локальным сервером django B, тогда у меня есть pb.
Может ли кто-нибудь объяснить, почему case2 считается перекрестным доменом? сервер B находится на моей машине, так почему случай 2 не будет считаться таким же, как case1?
Большое спасибо
некоторый код:
Вариант 1: я достигаю сервер A на моей домашней сети через AJAX в HTML-страницы.
если построить HTML-страницы с помощью Ajax запроса, как это:
check_user_status = function(userID){
url = "http://blabla/api" + userID;
var getting = $.get(url);
getting.done(function(data) {
status = data.result.status;
$("#result").append("association... " + status + "<br>");
if (status!="pending"){
clearInterval(timer);
clearTimeout(endRequest);
get_challenge();
}
});
}
, то я могу увидеть запрос отправляется и я могу анализировать реакцию JSon. В этом случае я заметил, что запрос GET не имеет «заголовка происхождения», и аналогичный запрос POST имеет источник = файл: //
Этот сервер A не кодируется мной, и я не могу его изменить.
Вариант 2: Я создал сервер B веб с помощью Django. Этот веб-сервер обслуживал html-страницу с js, где присутствует такой же запрос ajax. На этот раз Ajax-запрос к серверу A отправляется, но я не могу получить ответ и браузер поднятой ошибку:
Origin http://127.0.0.1:8000 is not allowed by Access-Control-Allow-Origin
Я заметил, что в этом случае GET происхождение устанавливается:
> http://127.0.0.1:8000
со вчерашнего дня я пытался играть с некоторыми промежуточного программного приложения на стороне сервера Джанго B ... без успеха
надеюсь, что проясняет еще раз спасибо
Разместите фрагмент кода –