0

您好,我正在尝试从 Web 服务获取响应,但是当我通过 XMLHttpRequest.send(params) 方法发送请求参数时,请求参数不会被发送。

下面是我的代码:

<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>

非常感谢任何形式的帮助...

4

1 回答 1

0

由于您使用“应用程序/Json”作为通信协议,并且您的 jquery 托管服务器和 Web 服务服务器不同,因此可能存在跨域请求问题

这里你应该使用Jsonp作为通信协议。

下面是一个例子 -

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

两个不同服务器之间的请求应该使用 jsonp 协议。

这里也有类似的问题 -

即使是 HTTP 200 状态,jQuery Ajax 也会失败

希望这对您有所帮助。

于 2013-03-12T12:03:45.537 回答