使用jquery-ajax发送json数据跨域

时间:2011-10-10 08:39:29

标签: jquery json

如何将json请求发送到远程服务器。看看下面的脚本有什么帮助吗?感谢。

$(document).ready(function() {

         $.ajax({
                    type: "post",
                    url: "SOMEURL/json/SubmitRequest",
                    data: '{"request":{"RespondentFirstName":"firstname","IsBattery":true,"AccountID":"1","Password":"somepwd!","RespondentEmailAddress":"emailaddress","ID":"id","QuestionnaireID":"Scan","RespondentFamilyName":"lastname"}}',
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
            crossdomain:true,
                    success: function(msg) 
                    {
                        alert(msg.Data);  
                    },
            error: function(msg) 
                    {
                        alert("Error = " + msg);  
                    }
           }); 

}); 获取警报错误消息=对象对象

2 个答案:

答案 0 :(得分:0)

对于默认的跨域,AJAX调用不起作用。但是,您可以通过更改两台服务器上的内容来解决此问题。

请查看此页面上的JSONP文档:http://api.jquery.com/jQuery.getJSON/

另一个解决方案是执行代理:对自己的页面执行AJAX调用,并使用PHP执行某些操作将数据发送到其他服务器

答案 1 :(得分:0)

你不能跨域调用AJAX,因为它打破了Javascript的沙盒模型 - 这是Web浏览器的安全功能。