Я вызываю POST на стороннем API, с которым я работал с помощью функции jQuery $.ajax. Однако, когда я делаю вызов, я получаю следующую ошибку: XMLHttpRequest cannot load http://the-url.com. The request was redirected to 'http://the-url.com/anotherlocation', which is disallowed for cross-origin requests that require preflight.
Я видел из этого сообщения, что это может быть ошибка Webkit, поэтому я попробовал ее в Firefox (я развиваюсь в Chrome), и я получил тот же результат. Я пробовал это в Chrome и Firefox, и получаю тот же результат.
Per этот пост, я также попытался использовать jsonp, установив свойство crossDomain
функции $.ajax на true
и установив dataType
до jsonp
. Но это вызвало ошибку внутреннего сервера 500.
Когда я запускаю Chrome с флагом --disable-web-security, у меня нет никаких проблем. Однако, если я запускаю браузер в обычном режиме, я получаю сообщение об ошибке.
Итак, я думаю, это может быть вопрос из двух частей. Что я могу сделать для этого междоменного запроса? Если JSONP является ответом, то как мне узнать, правильно ли настроен сторонний API для поддержки этого?
EDIT: снимок экрана, когда я делаю вызов с отключенной защитой браузера: https://drive.google.com/file/d/0Bzo7loNBQcmjUjk5YWNWLXM2SVE/edit?usp=sharing
Здесь экранная проверка, когда я делаю вызов с включенной защитой браузера (например, обычный): https://drive.google.com/file/d/0Bzo7loNBQcmjam5NQ3BKWUluRE0/edit?usp=sharing