关于options请求方式

关于options请求方式关于 options 请求方式 options 请求方法的主要用途有两个 1 获取服务器支持的 HTTP 请求方法 2 用来检查服务器的性能 例如 AJAX 进行跨域请求时的预检 需要向另外一个域名的资源发送一个 HTTPOPTIONS 请求头 用以判断实际发送的请求是否安全 为什么会出现 options 请求方式想必很多小伙伴在第一次遇到请求方式为 options 时 会有一丝诧异 有些人会百度百度 有些人可能压根不在乎 至于为什么会出现 options 请求 我也是百度查阅资料略知一二 这得从浏览器同源策略和跨域说

关于options请求方式

options请求方法的主要用途有两个:

1、获取服务器支持的HTTP请求方法;

2、用来检查服务器的性能。例如:AJAX进行跨域请求时的预检,需要向另外一个域名的资源发送一个HTTP OPTIONS请求头,用以判断实际发送的请求是否安全。

为什么会出现options请求方式

想必很多小伙伴在第一次遇到请求方式为options时,会有一丝诧异,有些人会百度百度,有些人可能压根不在乎。至于为什么会出现options请求,我也是百度查阅资料略知一二。

  • 这得从浏览器同源策略和跨域说起,具体可阅读也谈同源策略和跨域问题和浏览器同源政策及其规避方法,这里不在赘述。
  • 解决跨域问题的方法有很多种,CORS是比较好的解决方案,我们的项目也是用的这种模式,这个模式会有”预检”的请求,也就是正常请求之前的options请求。
 跨域资源共享(CORS) 是一种机制,它使用额外的 HTTP 头来告诉浏览器 让运行在一个origin (domain) 上的Web应用被准许访问来自不同源服务器上的指定的资源。当个资源从与该资源本身所在的服务器不同的 域或端口请求一个资源时,资源会发起一个 跨域 HTTP 请求。 比如,站点 http://domain-a.com 的某 HTML 页面通过的 src 请求 http://domain-b.com/image.jpg。 网络上的许多页面都会加载来自不同域的CSS样式表,图像和脚本等资源。need-to-insert-img 出于安全原因,浏览器限制从脚本内发起的跨源HTTP请求。 例如XMLHttpRequest和Fetch API遵循同源 策略。这意味着使用这些API的Web应用程序只能从加载应用程序的同一个域请求HTTP资源,除非使用CORS 头文件。 
  • 浏览器将CORS请求分为两类:简单请求(simple request)和非简单请求(not-simple-request),简单请求浏览器不会预检,而非简单请求会预检。
同时满足下列三大条件,就属于简单请求,否则属于非简单请求
1.请求方式只能是:GET、POST、HEAD 2.HTTP请求头限制这几种字段:Accept、Accept-Language、Content-Language、Content-Type、Last-Event-ID 3.Content-type只能取:application/x-www-form-urlencoded、multipart/form-data、text/plain 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231054.html原文链接:https://javaforall.net

(0)
上一篇 2026年1月31日 下午6:01
下一篇 2026年1月31日 下午6:22


相关推荐

  • c语言中strstr函数怎么实现_c语言strstr函数怎么写

    c语言中strstr函数怎么实现_c语言strstr函数怎么写首先,我们来看strstr函数的使用可见,strstr函数是用来查找字串的一个函数。因为字符串中有“cde”子串,所以代码运行起来结果就是”cdef”。现在,我们已经将strstr函数的作用大概了解了一下,下面开始函数的模拟实现。首先,在cplusplus中搜索strstr可以了解到她返回的类型及参数相关链接:strstr-C++Reference(cplusplus.com)接下来,我们分析实现思路直到s1到了下图的位置,两者相等当*s1==*s2时进入while循环,s1+

    2022年10月9日
    6
  • 苹果录屏gif_动态录屏

    苹果录屏gif_动态录屏作为一名优秀的前端程序员,想要输出内容,总需要制作一些动图(前端动效、功能预览、代码讲解等),接下来咱们说一下,使用Mac录屏,并转成Gif格式动图的方法:工具:Mac、QQ操作步骤:1.打开QQ(没有安装QQ的话,请自行安装)使用QQ聊天对话框中的截图功能(小剪刀),选中“录屏”功能。或者使用快捷键command+shift+A2.按照提示,选择要录屏的区域进行视频录制。如下图:…

    2026年1月30日
    5
  • 爆火的Manus、ChatGPT Agent,竟藏着198个信息“黑洞”?

    爆火的Manus、ChatGPT Agent,竟藏着198个信息“黑洞”?

    2026年3月16日
    2
  • Android中跳转Activity有几种方法_java怎么跳转页面

    Android中跳转Activity有几种方法_java怎么跳转页面FLAG_ACTIVITY_NEW_TASK标记了FLAG_ACTIVITY_NEW_TASK,就一定会创建一个新的TASK吗,实验证明这是一个必要条件,还要结合taskAffinity来看,A.如果和H5Activity具有相应的亲戚存在了,那么只是会把H5Activity加入的亲缘的TASK中B.如果和H5Activity没有对应的亲缘关系的TASK,那么就会创建一个新的TASK了p

    2026年4月16日
    5
  • linux快捷键列表,全面总结Linux快捷键的使用

    linux快捷键列表,全面总结Linux快捷键的使用大家最常见的 windows 系统给大家提供了很多的快捷键 那么 Linux 快捷键有没有呢 Linux 快捷键在不同终端有不同的组合 linux 下有很多对于简化用户使用过程很有帮助的快捷键 下面做个简单的介绍 在控制台 虚拟终端下 1 ctrl alt delete 关闭计算机 2 alt fn f1 f2 f3 切换到第 n 个控制台 3 alt left 或者 alt right 切

    2026年3月17日
    2
  • stringutils类_emptystring

    stringutils类_emptystring本文整理匯總了Java中com.baomidou.mybatisplus.toolkit.StringUtils.isNotEmpty方法的典型用法代碼示例。如果您正苦於以下問題:JavaStringUtils.isNotEmpty方法的具體用法?JavaStringUtils.isNotEmpty怎麽用?JavaStringUtils.isNotEmpty使用的例子?那麽恭喜您,這裏精選…

    2022年10月6日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号