几分钟让你解决【跨域问题】

跨域

定义

跨域是指跨域名的访问,当一个系统访问另一个系统就有可能会出现跨域问题。

出现原因

是浏览器对于ajax请求的一种安全限制
域名不同,端口不同,二级域名不同。这三种满足任意一种都会出现跨域问题

解决方式

  1. Jsonp-- json变种
  2. nginx反向代理(部署)
  3. CORS(都可以使用-采纳)

Jsonp-- json

将请求填充再标签(src或img)中
<sccipt src=”http:/wwww/ssss”>
缺点
需要浏览器支持,并且只支持get请求.

nginx

nginx可以将外部请求做反向代理,转化为内部请求。但可以支持各种请求方式
缺点
需要在nginx进行额外配置,语义不清晰

CORS(推荐)

在服务端进行控制是否允许跨域,可自定义规则。 支持各种请求方式
Spring4.2.5之后支持使用注解:@CrossOrigin
缺点
会产生额外的请求,要做询问。

原创文章 25 获赞 70 访问量 1万+

猜你喜欢

转载自blog.csdn.net/ChengHuanHuaning/article/details/102953083
今日推荐