【1.2】简单请求和复杂请求cors原理

【1.2】简单请求和复杂请求cors原理
什么是CORS
跨域资源共享 是⼀种利⽤额外的HTTP头告诉浏览器让运⾏再⼀个origin(domain)上的web应⽤被准许访问来⾃不⽤源服务器上的指定资源,当⼀个资源从与该资源本⾝所在服务器不同域,资源就会发起⼀个跨域请求
浏览器限制从脚本内发起的跨域HTTP请求,⽐如XMLreq,FetchAPI
意味着只能从同⼀个域请求HTTP资源 除⾮响应报⽂包含了正确的?CORS响应头
image.png
acceptlanguage
CORS原理
跨域资源共享标准新增了⼀组 HTTP ⾸部字段,允许服务器声明哪些源站通过浏览器有权限访问哪些资源。另外,规范要求,对那些可能对服务器数据产⽣副作⽤的 HTTP 请求⽅法(特别是 GET 以外的 HTTP 请求,或者搭配某些 MIME 类型的 POST 请求),浏览器必须⾸先使⽤ OPTIONS ⽅法发起⼀个预检请求(preflight request),从⽽获知服务端是否允许该跨域请求。服务器确认允许之后,才发起实际的 HTTP 请求。在预检请求的返回中,服务器端也可以通知客户端,是否需要携带⾝份凭证(包括 Cookies 和 HTTP 认证相关数据)
从上⾯的⽂字中我们得到如下信息:
1、跨域资源共享标准新增了⼀组 HTTP ⾸部字段,服务器通过这些字段来控制浏览器有权访问哪些资源。
2、为了安全起见请求⽅式分为两类,⼀类不会预先发送options请求,⼀些会预先发送options请求。
3、 GET 以外的 HTTP 请求,或者搭配某些 MIME 类型的 POST 请求会触发options请求。
4、服务器验证OPTIONS完成后才会允许发送世界的http请求。
不会触发http预检请求的便是简单请求,想法能够触发http预检请求的便是复杂请求。
简单请求
满⾜:
1 .请求⽅法是以下三种⽅法之⼀:
image.png

本文发布于:2024-09-22 19:29:52,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/370757.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:请求   服务器   资源   跨域   允许   浏览器   预检   发起
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议