0
下面是我的發送請求功能:通過類似的東西直接無法發送授權頭使用Ajax
function invokeService() {
$(document).ready(function() {
var user = "User1";
var pass = "Pwd1";
var hash_str=make_base_auth(user, pass);
// the post to your webservice or page
$.ajax({
method: "GET",
xhrFields: {
withCredentials: true
},
beforeSend: function (xhr) {
xhr.setRequestHeader('Authorization', hash_str);
},
headers: {
'Authorization': 'Basic ' + hash_str
},
url: "http://Servername/ProjName/TestService.svc/GetDetails/" + $('#itemid').val(),
contentType: "application/json; charset=utf-8",
dataType: "jsonp"
});
});
}
我已經嘗試不同的方法,通過將用戶名和密碼:
$.ajax({
method: "GET",
username: user,
password: pass,
...
});
並通過設置授權標題,但每一個領帶我檢查它在提琴手,Auth
部分請求它聲明「沒有授權headerr存在」。它只是不發送它。任何人都可以幫我修復我的授權標題嗎?
下面是什麼提琴手的請求頭顯示出來:
GET /projName/TestService.svc/GetDetails/ABC123?callback=jsonpxxxxxxxxxxxxx HTTP/1.1
Client
Accept: application/javascript, */*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: en-US
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Transport
Connection: Keep-Alive
Host: ServerName
它不是編碼是問題,它只是頭不發送 – ElenaDBA
我明白了,但我記得有同樣的問題,當我試圖發送用戶身份驗證與你一樣的方式。 –