我的Web服務器在http://mypc.com:80
`同源問題
給出下面的SNIP運行爲什麼(我認爲)b/c我的web服務在端口8000上運行,這與運行IIS的端口(端口80)不同。
我以爲我抄做的Flickr的API的調用的例子,我可以通過使用JSONP(根據jQuery文檔here
因此得到解決,但它不是工作。任何想法/ sugggestions?
UPDATE
好了,所以我的請求被現在:
var myURL = "http://192.168.1.104:8000/PSOCharts/service/HighChart_ColumnChart/i?jsoncallback=?";
$.ajax({
url :myURL,
dataType: "jsonp",
success: function(data) {a(data)} ,
error: function(){alert("err");},
});
但我不斷地撞擊誤差函數,這裏就是BEING返回什麼:
[1.4,54.43,49.39,93.23]
現在我假定這爲B/C響應文本犯規包含任何類型的回調,
這裏是部分接口我打電話:
[WebInvoke(Method = "GET",
RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json,
UriTemplate = "HighChart_ColumnChart/{id}?callback={cb}")]
List<double> HighChart_ColumnChart(string id,string cb);
下面是實際的被調用函數:
public List<double> HighChart_ColumnChart(string id,string cb)
{
var z = new List<double>();
z.Add(1.4);
z.Add(54.43);
z.Add(49.39);
z.Add(93.23);
return z;
}
當我調試時,CB參數是這樣的:「jQuery19108121746340766549_1372630643878」。 如何修改代碼以正確包裝它? 感謝您的幫助!
從您的鏈接:「如果URL包含字符串」callback =?「(或類似的,由服務器端API定義),請求將被視爲JSONP。請參閱jsonp數據的討論請輸入$ .ajax()以獲取更多詳細信息。「也許你需要添加這個? –
從這第一個答案也將有所幫助:http://stackoverflow.com/questions/2681466/jsonp-with-jquery –