跨域系列问题及解决方案总结

- 什么是跨域?

浏览器的非同源为跨域。即两个页面拥有不同的协议(protocol)或端口(port)或主机(host)

- 为什么会出现跨域问题?

出于浏览器的同源策略限制,浏览器会拒绝跨域请求。
*注:严格的说,浏览器并不是拒绝所有的跨域请求,实际上拒绝的是跨域的读操作。浏览器的同源限制策略是这样执行的:

通常浏览器允许进行跨域写操作(Cross-origin writes),如链接,重定向;
通常浏览器允许跨域资源嵌入(Cross-origin embedding),如 img、script 标签;
通常浏览器不允许跨域读操作(Cross-origin reads)。*

- 为什么有跨域需求?

工程服务化后,不同职责的服务分散在不同的工程中,往往这些工程的域名是不同的,但一个需求可能需要对应到多个服务,这时便需要调用不同服务的接口,因此会出现跨域。

- 解决跨域方法

通常,最常用的跨域方式有以下三种:JSONP、CORS、postMessage。

1.、JSONP

核心思想:因此网页通过

你可能感兴趣的:(前端基础知识,前端)