我正在使用ajax調用基於WCF REST的服務。Jquery Ajax請求調用兩次,並且第一個請求不會在標頭中發送令牌
在頁面加載之前調用ajax方法。 我希望在ajax請求的頭部發送一個「令牌」。在提琴手這是我看到:
1)一個請求的服務沒有在標題中的令牌。(AJAX呼叫失敗) 2)一個請求對同一個服務與標記中的令牌。 AJAX呼叫通過)
之後,一切工作正常鉻和Safari瀏覽器。但IE 10和Mozilla只有一個服務電話。因爲服務調用在IE 10和Mozilla中失敗,因爲請求標頭中沒有標記。
這就是我所說的方法:
function callservice (method, serviceUrl, params, successHandler, errorHandler) {
$.ajax({
crossDomain: true,
type: method,
url: serviceUrl,
beforeSend: function (XMLHttpRequest) { XMLHttpRequest.setRequestHeader("Authorization", Token); },
contentType: "application/json; charset=utf-8",
dataType: "json",
success: successHandler,
error: errorHandler
});
function photos(data) {
alert(data);
console.log(data);
};
}
我同時控制Web服務和應用程序(調用該Web服務)。當應用程序和Web服務都駐留在本地主機上時,不會出現此問題。在這種情況下,只有一個成功的服務調用。但有一個跨域調用時有兩個AJAX調用。
我的問題是爲什麼AJAX請求沒有在第一次嘗試中發送令牌? 爲什麼令牌只在第二次AJAX調用中發送?
任何形式的幫助將不勝感激。
你從哪裏調用該函數? – Xymostech
IE 10中的服務調用失敗,Safari瀏覽器應該讀取「IE 10和Mozilla」的權利? –
我在文檔加載之前調用函數:$(document).ready(function(){ }); –