2025年跨域(跨域请求)

跨域(跨域请求)p 由于 js 同源策略的影响 当在某一域名下请求其他域名 或者同一域名 不同端口下的 url 时 就会变成不被允许的跨域请求 br 那这个时候通常怎么解决呢 对此菜鸟光头我稍作了整理 1 JavaScript nbsp nbsp 在原生 js 没有 jQuery 和 ajax 支持 的情况下 通常客户端代码是这样的 我假设是在 localhost p

大家好,我是讯享网,很高兴认识大家。



 <p>由于js同源策略的影响,当在某一域名下请求其他域名,或者同一域名,不同端口下的url时,就会变成不被允许的跨域请求。<br /> 

讯享网

那这个时候通常怎么解决呢,对此菜鸟光头我稍作了整理:
1.JavaScript
&nbsp;&nbsp; 在原生js(没有jQuery和ajax支持)的情况下,通常客户端代码是这样的(我假设是在localhost:8080的端口下的http://localhost:8080/webs/i.mediapower.mobi/wutao/index.html页面的body标签下面加入以下代码):

保存,浏览器打开http://localhost:8080/webs/i.mediapower.mobi/wutao/index.html,并且打开console控制台:


讯享网

浏览器很无情的给你弹出一个同源限制的错误,意思就是你无法跨域请求url的数据。
那么,我先采取第一种策略,运用html中的script标签,插入js脚本:
(1)通过script标签引用,写死你需要的src的url地址,比如:

这里我定义一个callbackfunction的函数,然后用script标签的src属性跨域请求数据,那么,test.js的内容经过约定,需要写成这样:
callbackfunction({"name":"wwwwwwwwwwww"});
保存,打开index.html并刷新:


结果和上面一样。

2.jQuery中的$.ajax()

   设想,当你想要使用jQuery请求跨域数据的时候,比如(还是刚才的index.html):

浏览器还是无情的报错,因为你这个url是不同的域名下的。

当你作了这么多挑逗工作之后,浏览器很爽快的给出了反应,表示它很爽,返回给了你一个对象,里面是远端不同域名下test.js中的数据。
3.postMessage+iframe

保存代码,打开本地testa.html,访问远端的testb.html


总结了一下,jQuery还是非常的好用的,基本上js能干的事情,jQuery都能非常快速并且高效的完成,当然,原生js也能解决很多事情,而HTML5的新功能也非常强大,这几种方法,我还是首推jQuery。

以上就是为大家分享的3种常用的js跨域请求数据的方法,希望对大家的学习有所帮助。

小讯
上一篇 2025-05-12 14:02
下一篇 2025-04-18 09:54

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/193701.html