前端开发之路--常见的跨域问题解决方案(一)

 时间:2024-10-14 09:15:06

WEB前端开发中,在与后端交互或者调用其它服务接口的时候,应该都会遇过跨域请求数据的问题(最直接的表现就是请求数据失败),小编在这里总结了一些常见的跨域解决方案。

前端开发之路--常见的跨域问题解决方案(一)

同源策略

1、在了解跨域(狭义)前,其实要先了解一下浏览器的同源策略,所谓的同源是指协议,域名,端口完全相同。图中箭头所指依次是:协议,域名,端口。

前端开发之路--常见的跨域问题解决方案(一)

2、浏览器的同源策略是出于基础安全的角度考虑的,如果不同源的话,网络上的资源和服务接口便会得以被随意勃谧锵疙访问和调用,会有很大的安全隐患,唁昼囫缍这也是同源策略的存在的理由。而只要协议,域名,端口任何一个不一致,便造成了跨域。

前端开发之路--常见的跨域问题解决方案(一)

3、但是有时候出于某些原因,我们需要跨域去访问部分资源,所以要处理一下跨域问题,处理的方式大概分为两种:前端处理和后端处理。

前端开发之路--常见的跨域问题解决方案(一)

4、在这里在科普一下:同源策略是在浏览器上实现的,其实服务端返回的数据是被浏览器所拦截的。

前端开发之路--常见的跨域问题解决方案(一)

script标签解决方案

1、script标签是解决前端跨域的解决方案之一。script标签通常是用来js文件,以及作为js脚本的书写域。几乎所有浏览器都支持这个标签。

前端开发之路--常见的跨域问题解决方案(一)前端开发之路--常见的跨域问题解决方案(一)

2、这里是要借助script的src属性去完成跨域,如上图所示,script标签引入的文件是来自其它源的资源,但并没有触发浏览器的同源鲮臻愉溏策略,从不同域名下加载静态资源,而被浏览器允许,变相的解决了跨域问题。这种解决方案便是jsonp。

前端开发之路--常见的跨域问题解决方案(一)
  • 如何做一名自律的小学生
  • iphone7p自动重启怎么办
  • 苹果怎样关闭引导式访问?
  • 白苹果怎么修复
  • iphone11内存满了无法开机
  • 热门搜索
    鸡皮肤怎么治疗 新乡旅游 太原旅游职业学院 怀孕可以吃泡面吗 空调扇怎么样 输卵管造影后多久可以要孩子 贵州赤水旅游景点 黄冈旅游 脸上的斑可以淡化吗 舌苔黄厚是怎么回事