我有一個RESTful Web服務和與服務交談的jQuery插件。這些域是不同的,所以我實現了JSONP並且一切正常。我可以在同一個域上使用JSONP嗎
我只是在進行一些更改,並將我的測試客戶端和測試服務託管到localhost,但我的JSONP回調不再被調用。
這裏是我的jquery調用。
var urlbase = 'http://localhost:8080';
$.getJSON(urlbase + '/Geography/Countries?callback=?', function (results) {
alert(results);
// populate the country lookup
$.each(results, function (key, value) {
$('select#countrylookup')
.append($('<option></option>')
.attr('value', value.Code)
.text(value.Name));
});
我知道一個事實,即該服務被稱爲並正在返回的結果,因爲我的服務斷點被擊中,我可以看到在提琴手/ F12工具的請求/響應。
如果(因爲我懷疑)我需要JSON的'本地域'和JSONP跨域的測試時,其他人採用什麼樣的策略?很顯然,我不想任何if(domain == local)風格的代碼。
感謝您抽出時間幫忙。不幸的是,我仍然無法得到這個工作,當提出本地請求時,我收到了400個錯誤的請求。 – 2014-10-01 13:33:02
更新:發現我的問題在於VS2010 Web服務器。如果我在本地IIS中託管網站沒有任何問題。即使使用原始的getJSON。我會做更多的檢查,確保我是正確的。 – 2014-10-01 15:22:41
Upvoted這個答案,因爲雖然它沒有解決我的實際問題,我沒有意識到'.ajax的'crossDomain'設置 – 2014-10-09 08:04:52