ajax怎么实现跨域

我想用ajax访问内网服务器上的数据,给目标地址发送一个参数,然后返回“xm”类型的数据,就会报500InternalServerError2ms$.ajax({type... 我想用ajax访问内网服务器上的数据,给目标地址发送一个参数,然后返回“xm”类型的数据,就会报500 Internal Server Error2ms

$.ajax({
type: "POST",
url:"http://192.168.1.111:8777/WaitingHandleLeaveService.asmx/Get_HY_List?argXml=<root><auth><YZH><![CDATA[yz]]></YZH><MM><![CDATA[E10ADC3949BA59ABBE56E057F20F883E]]></MM><TYPE><![CDATA[0]]></TYPE></auth></root>",
dataType:"xml",
success:function(msg){
alert("aa");
alert(msg);
}
});

注意:如果把dataType:"xml"的返回类型变为text,就不会报这个错误
但当用返回类型为text时,返回的值是空的(我要的数据就是xml类型)。
展开
 我来答
川新过客
2017-10-17 · TA获得超过1397个赞
知道小有建树答主
回答量:1327
采纳率:73%
帮助的人:368万
展开全部
jsonp可以传递get不可传递post,目前跨域只能是jsonp方式,虽然楼上说的都有理,但是归根到底还是没有解决 远程发送post数据到服务器的问题,目前我也没有找到合适的办法,不过如果客户端执行WEB脚本的话,在后台是可以发送post的,假如只是静态,目前没有别的办法
能做的只能尽量简化传输数据大小,采用jsonp的get方式。
IE9、Chrome、FF、Opera支持ResponseHeader Access-Control-Allow-Origin
IE下得额外配置:
jQuery.support.cors = true; (启用读取上面那个头信息的功能)
点击IE浏览器的的“工具->Internet 选项->安全->自定义级别”将“其他”选项中的“通过域访问数据源”选中为“启用”或者“提示”,点击确定就可以了。(自身的过滤)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
吟啼听风9448
2013-07-19 · 贡献了超过307个回答
知道答主
回答量:307
采纳率:0%
帮助的人:92.9万
展开全部
因为安全限制,ajax的POST方法是不支持跨域的。所以你可以通过get方法进行跨域请求。也可以通过&lt;script&gt;标签进行跨域请求!
追问
用get也不行,怎么用&lt;script&gt,写个demo吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户01215
2013-07-19 · 贡献了超过121个回答
知道答主
回答量:121
采纳率:0%
帮助的人:31.4万
展开全部
因为安全限制8964ajax的POST方法是不支持跨域的所以你可以通过get方法进行跨域请求也可以通过&lt;script&gt;标签进行跨域请求!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式