我對Ajax比較陌生,只是負責這個跨域調用。我們在我們的網頁上有一個文本框,用戶將用它來搜索公司名稱。通過單擊文本框旁邊的按鈕,將會請求Ajax調用。不幸的是,Web服務位於一個單獨的域中,所以這自然會造成問題。Ajax - '訪問控制 - 允許來源'不允許訪問本地主機'
以下是我做這項工作的最佳嘗試。我還應該注意到,此調用的目的是以XML格式返回結果,這將在請求的success
部分進行解析。
這裏又是錯誤消息:
Origin http://localhost:55152 is not allowed by Access-Control-Allow-Origin.
我無所適從,以什麼爲一個變通辦法做的,任何想法將不勝感激。
function GetProgramDetails() {
var URL = "http://quahildy01/xRMDRMA02/xrmservices/2011/OrganizationData.svc/AccountSet?$select=AccountId,Name,neu_UniqueId&$filter=startswith(Name,\'" + $('.searchbox').val() + "\')";
var request = $.ajax({
type: 'POST',
url: URL,
contentType: "application/x-www-form-urlencoded",
crossDomain: true,
dataType: XMLHttpRequest,
success: function (data) {
console.log(data);
alert(data);
},
error: function (data) {
console.log(data);
alert("Unable to process your resquest at this time.");
}
});
}
嘗試在您的響應標題中添加Access-Control-Allow-Origin:*。 – PSL 2013-03-20 21:07:04
你能提供一個如何做的例子嗎? – NealR 2013-03-20 21:21:12
好的。這是c#code.Try Response.AppendHeader(「Access-Control-Allow-Origin」,Request.Headers [「Origin」]);或Response.AppendHeader(「Access-Control-Allow-Origin」,「*」); – PSL 2013-03-20 22:13:43