jq ajax 跨域_解决跨域请求

jq ajax 跨域_解决跨域请求jQuery中封装了ajax的方法,以下主要讨论在这种方法下跨域的问题1.在服务端添加响应头header(‘Access-Control-Allow-Origin’,’*’)header(‘Access-Control-Allow-Methods’,’PUT,POST,GET,DELETE,OPTIONS’)

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

jQuery中封装了ajax的方法,以下主要讨论在这种方法下跨域的问题

1. 在服务端添加响应头

  header('Access-Control-Allow-Origin', '*')
  header('Access-Control-Allow-Methods', 'PUT,POST,GET,DELETE,OPTIONS')

显然这种方法需要你能够修改服务端的代码
使用这种方法在谷歌浏览器下依然可能会有限制,可能会有报错”Origin null is not allowed by Access-Control-Allow-Origin”,一个解决方法是将文件都放到一个服务器上,第二个解决方式右键谷歌浏览器,点击属性,在位置后面加上–disable-web-security

2.jsonp

这是一种伪跨域的方法,将ajax方法发生的参数中加上datatype:jsonp,
这种方法只支持GET,不支持POST,而且传回的数据大小有限制。
还有一点要注意的是,jsonp的格式与json略有不同,要对传回的格式加以修改才行


然而在无法修改服务端代码的情况下,上面的方法显然不够,这里推荐cors的方法,这里推荐阮一峰的博客或者查MDN

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/172573.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号