返回
浏览器跨域与同源策略
前端
2023-09-07 21:15:14
跨域的本质
在浏览器的同源策略下,跨域是指网页中的资源(如图片、脚本、样式表)来自于其他域名、协议或端口的服务器,导致浏览器出于安全考虑,不允许这些资源加载和执行。跨域的本质是浏览器为了防止恶意网站窃取敏感数据或执行未经授权的操作而采取的保护措施。
跨域请求类型
跨域请求主要分为两类:
- 简单请求: 包括GET、HEAD和POST请求,且请求头中只包含Accept、Accept-Language、Content-Language、Content-Type(仅限application/x-www-form-urlencoded、multipart/form-data、text/plain)等允许的头部字段。
- 复杂请求: 除简单请求之外的所有请求,如PUT、DELETE、PATCH等方法,或者在请求头中包含自定义头部字段。
跨域解决方案
解决跨域问题的常用方法包括:
- JSONP: JSONP(JSON with Padding)是一种跨域请求的变通方法,通过在HTML页面中动态创建