这样写有什么错误 怎么跨域
可以参考下这个文档,你让后台服务器端设置response的head
前端ajax配置
xhrFields:{withCredentials: true},
crossDomain:true,
题主你好,
我没有深度接触过jquery,只能依据自己经验给你一定的启发,权当抛砖引玉,有错漏之处亦欢迎各路大神批评指正
首先:对于前后端数据对接,跨域问题只存在于前后端分离,前端与后端不在同一服务器,此时会涉及到浏览器同源策略,这个题主可以参考,浏览器的同源策略 - Web 安全 | MDN or 什么是同源策略 - 掘金 or 同源策略_百度百科 这三个介绍的都比较详细,此处因篇幅所限不予赘述
而跨域解决有前端解决与后端解决两种方式【不过据我所知以后端解决为主】,技术我知道的有cors、jsonp、代理服务器三种
cors技术只能后端解决:后端使用cors技术解决跨域,基本原理就是按照相应规则【html文档中指定了】在响应头中添加指定内容【不过后期如果使用是springboot,可以直接使用内置注解解决】,需要注意的是这个方式彻底解决了跨域问题,凡是加了这个响应头的数据都可以不受同源策略所限,在公司存在一定隐患,使用需要小心谨慎
jsonp是利用了<script>
标签的 src 属性可以加载跨域的 JavaScript 脚本 这一特性,具体可见JSONP是什么? ,由于需要前后端配合,目前该技术很少用到
代理服务器,该技术可以前端实现,亦可以使用nginx。基本原理是利用 同源策略仅影响浏览器到服务器,服务器本身不受同源策略限制 原理,代理服务器域名、端口号、协议与浏览器均一致,代理服务器收到浏览器信息后再转发到业务服务器,个人感觉可以理解为中间人模式。nginx本人目前没有接触,如果有大佬欢迎补充
以上
补充一点,在原生html-css-js及jquery中常使用ajax请求发送数据,在框架中常使用axios等第三方框架
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
图呢?图呢?图呢?
跨域改用 JSONP 方式吧。