У меня есть обратный прокси-сервер, который проверяет глобальную аутентификацию для нескольких приложений. Когда пользователь отключен, но все еще пытается использовать мое приложение, прокси отправляет ответ 302:
HTTP/1.1 302 Found
Date: Wed, 11 Sep 2013 09:05:34 GMT
Cache-Control: no-store
Location: https://other.url.com/globalLoginPage.html
Content-Length: 561
Content-Type: text/html; charset=iso-8859-1
Via: 1.1 my-proxy.com
Connection: Keep-Alive
В angularJs вызывается обратный вызов ошибки, но заголовки ответа пустые, статус 0, а данные - пустая строка. Поэтому кажется, что я действительно не могу ничего сделать, чтобы справиться с ответом...
Я видел несколько вопросов по этому вопросу, и я до сих пор не понимаю, что происходит (CORS из-за прокси или другого домена в местоположении?, Поведение браузера 302?).
В частности, есть эта часть ответа (qaru.site/info/210021/...):
Примечание. Если ваш сервер устанавливает код ответа 301 или 302, вы не сможете получить заголовок Location, так как он будет автоматически и прозрачно следовать за объектом XMLHttpRequest.
Как насчет этого объекта XMLHttpRequest?
В очень старой версии Chrome (не могу использовать более новую версию) я вижу, что соответствующий запрос на панели сети, но, похоже, не работает, поскольку ответа нет.
В последней версии firefox ничего не происходит.
Могу ли я что-нибудь сделать с этим, так как я не могу изменить конфигурацию прокси-сервера и ответ?
Update:
Сегодня я переиграл свой сценарий, и благодаря новой версии firebug я смог получить более подробную информацию о том, что происходит.
Я был недалеко от андерсея в моем вопросе: перекрестная политика домена.
Поскольку это HTTP-запрос, сделанный моим приложением, браузер отказывает в следующем XMLHttpRequest (которое в приложении похоже на тот же запрос). Отсюда ошибка и пустой ответ.
Поэтому я думаю, что я ничего особенного не могу с этим сделать