2012-03-15 9 views
2

У меня возникли трудности с моим заголовком авторизации Ajax. Я пытаюсь отправить это так:Заголовок автозапуска Ajax не отправлен

$.ajax({ 
    url: query, 
    type: "GET", 
    accept: "application/json", 
    dataType: 'json', 
    beforeSend: function (xhr) { 
     alert('1'); 
     var bytes = Crypto.charenc.Binary.stringToBytes("xxxxxxxx:xxxxxxxxx"); 
     alert('2'+bytes); 
     var bas64 = Crypto.util.bytesToBase64(bytes); 
     alert('3'+bas64); 
     xhr.setRequestHeader("Authorization", "Basic " + bas64); 
     alert('up and awaaaaaaaay'); 
    }, 
    succes: function (result) { 
     alert('success!'); 
    }, 
    error: function (xhr, ajaxOptions, thrownError) { 
     alert(xhr.responseText); 
     //$('#DisplayInfoLoader').html('<span style="color: red;">An Error occured....' + xhr.responseText + '</span>'); 
     //$('#DisplayInfoLoader').fadeOut(3000); 
    } 
}); 

Но когда я пытаюсь й код .. он не посылает заголовок ... Отправляясь в запросе-URL вручную и заполнение учетных данных работают ... и даже с учетными данными в сеансе (/ GET-запрос клиента отправляет заголовок авторизации отлично), заголовок НЕ отправляется при доступе к/URI проекта ....

+0

Какую версию jQuery вы используете? Вы видели это? http://forum.jquery.com/topic/please-confirm-setrequestheader-not-working – bububaba

+0

Ну, я решил свою проблему, просто имею синтаксическую ошибку, теперь она работает для меня ... так кто-нибудь знает, как прекратить щедрость?))))))))) –

+0

@DenisAgarev Я боюсь, что как только он будет приведен в движение, щедроты будут безотзывными. Хорошо, что вы решили свою проблему. – blahdiblah

ответ

2

Решение заключалось в том, что заголовки не были разрешены службой , Браузер удаляет каждый заголовок, который не будет разрешен службой.

Убедитесь, что служба использует заголовок Access-Control-Allow-Headers! Вот что я узнал

Смежные вопросы