logo头像

求知若渴,虚心若愚

浏览器 - 什么是跨域

跨域

什么是跨域

跨域是浏览器行为,是浏览器安全方面的考虑,是浏览器基于同源策略做出的限制

TIP
后端开发中是没有跨域限制的,因为跨域是浏览器行为,有时候有些后台开发不懂后台配置跨域,就会甩锅给前端,其实前端开发解决起来并没有那么简单,很多时候还是需要后台配合的

URL

  • URL全程统一资源定位符,是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。
  • 互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。

基础组成

模式(或称协议)、服务器名称(或IP地址,这其中包含端口)、路径和文件名

同源策略(SOP)

  • 简单说来,要求协议,域名,端口都相同才可以,否则均认为需要做跨域的处理

协议相同

  • 同源策略要求协议必须一致
  • 常见协议
    • HTTP:超文本传输协议
    • HTTPS:(全称:Hypertext Transfer Protocol over Secure Socket Layer),简单讲是HTTP的安全版
    • FTP:File Transfer Protocol文件传输协议
    • TCP:传输协议,HTTP是应用协议
    • mailto:电子邮件地址
    • ldap:轻型目录访问协议搜索
    • file:当地电脑或网上分享的文件
    • news:Usenet新闻组
    • gopher:Gopher协议
    • telnet:Telnet协议

TIP
同源策略要求协议相同,不同协议就是跨域

域名相同

  • 相同域名,要求主域名和子域名都相同
  • 相同域名,要求主域名和二级域名都相同

端口相同

  • 端口号一般都是默认的

TIP
端口和协议的不同,只能通过后台来解决
localhost和127.0.0.1虽然都指向本机,但也属于跨域

支付宝打赏 微信打赏

赞赏是对我们的肯定!