2016-06-16 64 views
0

我一直在使用郵遞員來測試一個API,我可以成功地調用。無法驗證通過XMLHttpRequest休息電話

當我嘗試通過JavaScript執行此調用時,我得到一個身份驗證錯誤。

的URL和授權相匹配的郵遞員電話,當我打電話使用這些細節,捲曲我能夠檢索正確的數據。

<script type="text/javascript"> 

var data = new FormData(); 
data.append("attributeId", ""); 
data.append("validFrom", ""); 

var xhr = new XMLHttpRequest(); 
xhr.withCredentials = true; 

xhr.addEventListener("readystatechange", function() { 
    if (this.readyState === 4) { 
    console.log(this.responseText); 
    } 
}); 

xhr.open("GET", "http:/restpAPI/test"); 
xhr.setRequestHeader("authorization", "Basic asdsadsadjlafdkfjkldfj=="); 
xhr.setRequestHeader("cache-control", "no-cache"); 
xhr.setRequestHeader("postman-token", "dsadasd-asdsad-asd-asd-aasd"); 
xhr.send(data); 


    </script> 

當我用這個腳本運行一個本地網頁時,我得到一個401說未經授權。

JavaScript代碼和postman或cURL之間有什麼區別,有沒有一種從JavaScript進行身份驗證的方法?

更新

我發現,設置與授權密鑰的RequestHeader原來從A到期權的請求。這是造成錯誤。

回答

1

雖然HTTP頭應該是不區分大小寫的,你有沒有試着用標題的情況下(Authorization)設置標頭的名字?