Я пытаюсь следовать вариант # 3 в растворе при этом SO сообщение: A controller action which returns a partial view inserts the logon page when authorization failsМетод JQuery AjaxComplete Удаление пользовательских заголовков?
Я бегу в проблему чтения мой пользовательский заголовок в методе ajaxComplete в JQuery.
Я подтвердил в стельку и инструменты отладки хром, что пользовательский заголовок, на самом деле отправляется обратно и получил в браузере ...
Response Headers (в Fiddler):
Server: ASP.NET Development Server/10.0.0.0
Date: Sun, 15 Jan 2012 04:00:13 GMT
X-AspNet-Version: 4.0.30319
X-AspNetMvc-Version: 3.0
Unauthorized: 1
Cache-Control: private
Content-Length: 0
Connection: Close
Ответ Заголовки (как полученные Chrome):
Cache-Control:private
Connection:Close
Content-Length:0
Date:Sun, 15 Jan 2012 04:12:13 GMT
Server:ASP.NET Development Server/10.0.0.0
Unauthorized:1
X-AspNet-Version:4.0.30319
X-AspNetMvc-Version:3.0
Response Headers (как найти из вызова "getAllResponseHeaders()" на переменную XMLHttpRequest перешла в ajaxComp Lete):
Date: Sun, 15 Jan 2012 04:42:21 GMT
X-AspNet-Version: 4.0.30319
Connection: Close
Content-Length: 65
X-AspNetMvc-Version: 3.0
Server: ASP.NET Development Server/10.0.0.0
Content-Type: application/json; charset=utf-8
Cache-Control: private
Интересно, что функция, которая вызывается после возврата запроса исходного АЯКСА (как инициировано JQuery) не получить Несанкционированный заголовок.
Кто-нибудь знает, что здесь происходит и что я могу сделать, чтобы решить эту проблему?
Вот мой "ajaxComplete" JavaScript код
$(document).ajaxComplete(function (event, request, settings) {
alert(request.getResponseHeader('Unauthorized'));
});
я видел, что SO заранее опубликовать. Я не использую Ajax Manager. У меня есть другие загруженные JS-библиотеки, я проверю, будет ли кто-нибудь из них использовать Ajax Manager или связываться с самим ajaxComplete, но на данный момент это не вероятность ИМО. – omatase
Подтверждено, нет ссылки на ajaxmanager, «ajax manager», ajaxcomplete или ajaxsuccess в любом месте, кроме кода, упомянутого в моем исходном сообщении и внутри самого jquery. – omatase
Вы знаете, откуда взялось «Content-Type: application/json; charset = utf-8»? У вас есть это в getAllResponseHeaders, но не в хромовой проверке. Кроме того, можете ли вы публиковать результаты getAllResponseHeaders вашего оригинального вызова ajax? –