Я пытаюсь подключиться к внешнему POST api для аутентификации. Я пытаюсь:
$http({
method : 'POST',
url : 'myURL',
data : {"j_username": "myUserName,"j_password": "myPassword"},
headers : {
'Content-Type': 'application/x-www-form-urlencoded',
}
})
Но я получаю эту ошибку:
XMLHttpRequest не может загрузить http://...url. Ответ на предполетный срок недействителен (перенаправление)
Это похоже на проблему CORS. Если javascript обслуживается из другого домена, чем домен API, который вы вызываете, вы столкнетесь с проблемами CORS. Короче говоря, браузер обнаружит, что javascript был отправлен из домена A и что API находится в домене B. Что происходит дальше, зависит от того, что вы пытаетесь сделать, в этом случае вы выполняете POST, что означает, что браузер будет отправьте на сервер API проверку перед полетом, чтобы спросить, хорошо ли это с помощью этого javascript из домена A, доступного ему. Сервер должен ответить, чтобы сказать "да", чтобы браузер разрешил запрос (на самом деле он немного сложнее, чем "сказать" да ", но вы понимаете).
Короче говоря, вам нужно настроить сервер API, чтобы это разрешить. Если это не ваш API, тогда вам нужно спросить того, кто владеет этим API, если они могут настроить CORS, чтобы ваш javascript мог получить к нему доступ.
Если вам нужно работать с такими настройками, стоит потратить время, чтобы прочитать его и понять правильно. С другой стороны, возможно, вы просто пинали что-то с локальным файлом js, и в этом случае вам просто нужно знать, что он не будет работать так.
См. Также qaru.site/questions/52946/....