2013-03-12 62 views
0

您好,我試圖從Web服務獲取響應,但是當我通過XMLHttpRequest.send(params)方法發送請求參數時,請求參數不會被髮送。無法通過XMLHttpRequest發送參數字符串

下面是我的代碼:

<script type="application/javascript"> 
window.onload = function myFunc() 
{ 
    var httpRes; 
    if (window.XMLHttpRequest) 
    { 
     httpRes=new XMLHttpRequest(); 
    } 
    else 
    { 
     httpRes=new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    httpRes.open("POST", "http://192.168.11.59:3333/Reports/GenerateMobReportJsonData", true); 
    var params = {'FromDate':'02/19/2013 17:30','ReportId':'1','LocationId':'1','ToDate':'02/19/2013 19:00','TeamId':'1'} 
    httpRes.setRequestHeader('content-type', 'application/json'); 
    var jsonReq = JSON.stringify(params); 
    //alert(jsonReq) 
    httpRes.send(jsonReq); 
} 
</script> 

任何形式的幫助是非常讚賞...

+0

是你的jquery託管服務器和Web服務託管服務器上相同的IP? – 2013-03-12 11:54:52

+0

@PiyasDe:no ... – Rocker 2013-03-12 11:55:56

+0

嘗試httpRes.open(「POST」,「http://192.168.11.59:3333/Reports/GenerateMobReportJsonData」,false); – MarmiK 2013-03-12 11:56:38

回答

0

當您使用「應用程序/ Json的」作爲您的通信協議和你的jQuery託管服務器和網絡業務服務器是不同的,可以有跨域請求

這裏的一個問題,你應該使用JSONP作爲通信協議。

下面是一個例子 - 兩個不同的服務器之間

http://www.jquery4u.com/json/jsonp-examples/

請求應JSONP協議去。

也是一個類似的問題在這裏 -

jQuery Ajax fails even with the HTTP 200 status

希望這有助於你。