什么是跨域?跨域的三要素
时间: 2024-09-07 21:02:20 浏览: 39
Django实现跨域请求过程详解
跨域,全称同源策略(Same-Origin Policy),是浏览器的一个安全特性,它限制了网页从当前源加载数据的能力,特别是对于像JavaScript这样的客户端脚本。简单来说,如果一个网页(被称为“源”)试图从另一个域名、协议(HTTP/HTTPS)或端口请求资源,浏览器会默认阻止这种操作,以防恶意网站利用此漏洞进行攻击。
跨域的三要素主要包括:
1. **源(origin)**:指发送请求的网页地址,通常是URL的协议、主机名和端口号的组合。例如,`http://example.com:8080`。
2. **目标地址(destination)**:即被请求的资源所在的服务器地址,如`http://api.example.com/data`。
3. **请求方法(method)**:常见的HTTP方法,比如GET、POST等。如果方法和目标地址不匹配源地址的任何一个,也可能触发跨域问题。
当这三个要素不符合时,浏览器就会报跨域错误(CORS),除非服务器通过设置响应头`Access-Control-Allow-Origin`来明确允许特定的源访问其资源,这就是所谓的“CORS策略”。
阅读全文