http - HTTP header 是否区分空格/大小写/顺序?

标签 http ssl http-headers hsts

让我们假设我有这些 header :

Strict-Transport-Security: max-age=<expire-time>
Strict-Transport-Security: max-age=<expire-time>; includeSubDomains
Strict-Transport-Security: max-age=<expire-time>; preload

为了编写正则表达式,我需要知道:

标题空间敏感吗?例如max-age=<expire-time> vs. Max-age=<expire-time> 它们区分大小写吗?例如max-age= <expire-time> vs. Max-age=<expire-time> 他们对订单敏感吗?例如max-age=<expire-time>; preload vs. preload; max-age=<expire-time>;

最佳答案

回答此类问题的来源是标准 - 这就是标准的用途。引用自 RFC 7230 section 3.2 :

Each header field consists of a case-insensitive field name followed by a colon (":"), optional leading whitespace, the field value, and optional trailing whitespace.

至于字段值,这个要看实际的header。例如 Set-Cookie 中的值是区分大小写的。对于 Strict-Transport-Security,您必须查看相关标准。在 RFC 6797 it says in section 6.1 :

  1. The order of appearance of directives is not significant.
    ...
  2. Directive names are case-insensitive.

关于http - HTTP header 是否区分空格/大小写/顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56047385/

相关文章:

http - 使用 ExpressJS 提供非标准 HTTP 方法

ssl - SSL Session 结束后数据会发生什么变化?

asp.net - 自动 IIS6 403.4 重定向到 SSL 不工作

javascript - 通过 Chrome 扩展程序阻止按 Content-Type 下载

javascript - 多次调用 api 时,AJAX 请求有时会被取消

ruby-on-rails - 如何使用 POST 请求发送一个数组,该数组的参数名称包含一组空的方括号 []?

image - 银联银行 : Can't I download image with a URL?

ssl - 将 keystore 与 Talend Administration Center 结合使用

java - 使用tomcat在Content-type header 响应中保留分号后的空格

javascript - Node js在HTTP请求中接收文件