nnpc.net
当前位置:首页 >> js跨域请求怎么做? >>

js跨域请求怎么做?

==!你想在别人的主页上插入代码 ,你觉得可能么?

jsonp可以实现JSONP是一个非官方的协议,它允许在服务器端集成Script tags返回至客户端,通过javascript callback的形式实现跨域访问(这仅仅是JSONP简单的实现形式).具体看参考资料

js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议、域名、端口有任何一个不同,都被当作是不同的域.

只需要改一句话..<br>既然您都知道JSONP了..<br>就改成<br>$.ajax({ <br> type: "Get", <br> url: url2, //这个url可以放本机意外主机地址么?<br> cache: false, <br> error: function () {alert("服务器1请求失败!");}, <br> dataType: "jsonp", <br> success: function (result) { <br> alert("服务器1刷新成功 !"); <br> }<br> });<br><br>对了有一个前题.<br><br>只有GET有JSONP.

1.什么是跨域<br>经常会在页面上使用ajax请求访问其他服务器的数据,此时,客户端会出现跨域问题.<br>跨域问题是由于javascript语言安全限制中的同源策略造成的.<br>简单来说,同源策略是指一段脚本只能读取来自同一来源的窗口和文档的

解决js跨域问题有以下一种方式使用jsonp服务端代理服务端设置Request Header头中Access-Control-Allow-Origin为指定可获取数据的域名

只通过js各种限制比较麻烦, 还是先从同域服务器端读取再发回给js吧 参数之类的js先post给服务器, 服务器读了再发回来就行

从安全性上考虑,scrip是不能跨域访问程序的,除非两个域能够协调,加上一个桥梁.比如:域A的页面1(AP1)中包含域B的页面1(BP1),AP1的JS是没法调用BP1的JS的,同时,BP1的JS也没法调用AP1的JS的,但是,AP1可以传递参数给BP1,这样的话,可以在BP1种包含一个域A的页面2(AP2),BP1传递参数给AP2,而AP2再调用AP1的方法,这样就可以完成这个工作.

<script src="http://www.sinasss.com/aa.php"></script>js这样即可实现!

通过script标签来请求,原理就是在本域内的A内生成一个JS标签,它的SRC指向请求的另外一个域的某个页面B,这个src里面通常会加一个A页面定义好的回调函数,B返回数据即可,可以直接返回调用这个回调函数,这种跨域的通信方式被称为JSONP,此方案存在的缺陷是, script的src属性完成该调用时采取的方式时get方式,如果请求时传递的字符串过大时,可能会无法正常运行.

网站首页 | 网站地图
All rights reserved Powered by www.nnpc.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com