HTTP请求首部字段及响应首部字段详解

 更新时间:2024年06月19日 09:32:51   作者:叹人间,美中不足今方信  
这篇文章主要介绍了HTTP请求首部字段及响应首部字段,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

HTTP请求方法包括:POSTGETPUTDELETEOPTIONS

对于除GET请求以外的HTTP请求

如果存在跨域请求

浏览器必须首先使用OPTIONS方法询问服务端是否允许跨域请求,然后才发起真正的请求,OPTIONS请求称为预检请求

HTTP请求首部字段,预检请求发送给服务器

Origin

  • 预检请求或实际请求的原域名
  • 不管是否为跨域请求
  • Origin字段总是被发送

Access-Control-Request-Method

  • 预检请求
  • 将实际请求的HTTP方法告诉服务器

Access-Control-Request-Headers

  • 预检请求
  • 将实际请求所携带的首部字段告诉服务器

HTTP响应首部字段

Access-Control-Allow-Origin

  • 服务器允许跨域访问的域
  • 对于不需要携带身份凭证
  • 服务器可以配置该属性为“*”
Access-Control-Allow-Origin: www.baidu.com

Access-Control-Allow-Methods

  • 服务器允许跨域请求的方法
  • 用于预检请求的响应

Access-Control-Allow-Headers

  • 服务器允许跨域请求携带的首部字段
  • 用于预检请求的响应
  • 可以自定义
Access-Control-Allow-Headers: app-id

Access-Control-Allow-Credentials

  • 服务器允许跨域请求携带身份凭证(cookiesauthorization headersTLS client certificates等)
  • 如果允许,设置为true
  • 如果不允许则不需要设置,因为此属性只有true一个可选值
  • 并且对于附带身份凭证的请求
  • Access-Control-Allow-Origin不能使用通配符
Access-Control-Allow-Credentials: true

Access-Control-Expose-Headers

  • 服务器允许浏览器访问的头
  • 默认情况下:
  • 浏览器只能获取到Cache-ControlContent-LanguageContent-TypeExpiresLast-Modified

Access-Control-Max-Age

  • 服务器设置OPTIONS预检的缓存时长(以秒为单位)
  • 在缓存时长内
  • 这个域不再发起预检请求
  • 可以直接发起真正的HTTP请求
Access-Control-Max-Age: 28800

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Mac M1安装Homebrew的方法步骤

    Mac M1安装Homebrew的方法步骤

    这篇文章主要介绍了Mac M1安装Homebrew的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • 分享10个程序员常用的的代码文本编辑器

    分享10个程序员常用的的代码文本编辑器

    通常操作系统和软件开发包中都包含文本编辑器,可以用来编辑配置文件,文档文件和源代码,这里分享一下程序员常用的代码编辑器,需要的朋友可以参考下
    2016-09-09
  • Kali渗透测试之使用Metasploit对Web应用的攻击

    Kali渗透测试之使用Metasploit对Web应用的攻击

    这篇文章主要介绍了Kali渗透测试:使用Metasploit对Web应用的攻击,这种漏洞源于Web应用程序没有对用户输入的内容进行准确的验证,从而导致操作系统执行了攻击者输入的命令,需要的朋友可以参考下
    2022-05-05
  • CentOS下安装Jenkins的完整步骤

    CentOS下安装Jenkins的完整步骤

    Jenkins是一款由Java编写的开源的持续集成工具,下面这篇文章主要介绍了CentOS下安装Jenkins的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-04-04
  • transform实现HTML5 video标签视频比例拉伸实例详解

    transform实现HTML5 video标签视频比例拉伸实例详解

    这篇文章主要介绍了transform实现HTML5 video标签视频比例拉伸的相关资料,需要的朋友可以参考下
    2016-09-09
  • VSCode设置网页代码实时预览的实现

    VSCode设置网页代码实时预览的实现

    这篇文章主要介绍了VSCode设置网页代码实时预览的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • 详解Hadoop2.7.2 编译64位源码

    详解Hadoop2.7.2 编译64位源码

    这篇文章主要介绍了Hadoop2.7.2 编译64位源码的相关知识,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • Skywalking环境搭建过程

    Skywalking环境搭建过程

    这篇文章主要介绍了Skywalking环境搭建,Skywalking默认使用H2内存进行数据的存储,我们可以替换存储源为ElasticSearch保证其查询的高效及可用性,本文给大家介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • VSCode插件安装完成后的配置详解

    VSCode插件安装完成后的配置详解

    这篇文章主要介绍了VSCode插件安装完成后的配置详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Git常用场景使用之分支操作

    Git常用场景使用之分支操作

    这篇文章主要介绍了Git常用场景使用-分支操作,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08

最新评论