http header Authorization: Bearer和token之间可以有几个空格

1、问题

项目中用到了satoken,一次使用apipost测试接口,http header中Authorization的Bearer和token之间,不小心,敲了两个空格,服务端报token无效;【不太好排查】,最后发现,是多了一个空格,去掉后,保持一个空格,成功

2、分析

satoken参考文档

代码

是一个空格

根据tokenValue,拼接,取查找对应信息(如果Bearer和Token之间有两个空格,这里,tokenValue的第一个字符就是空格,出错的地方

3、RFC文档

RFC6750

RFC 6750 - The OAuth 2.0 Authorization Framework: Bearer Token Usage

Authorization的值,是扩充巴克斯方式

RFC 5234

RFC 5234 - Augmented BNF for Syntax Specifications: ABNF

=》结合如下规则,1*SP,应该表示:至少一个空格 (所以,Authorization,Bearer后面如果有多个空格,后端服务器最好是能做下兼容处理,去掉多余的空格)

%x20百分号编码(Percent-Encoding) 中的表示方式,表示ASCII字符码的十六进制值

%x20 表示空格字符(Space)

相关推荐
孤影过客36 分钟前
互联网谍战:HTTPS如何守护数据,以及头顶的量子阴云
网络协议·http·https
牛奶1 小时前
为什么全国人民都能秒开同一个视频?
前端·http·cdn
萝卜白菜。5 小时前
Http GET / 请求返回值不同的问题
网络·网络协议·http
jessecyj7 小时前
Nginx中$http_host、$host、$proxy_host的区别
运维·nginx·http
博语小屋8 小时前
Reactor、epoll下设计一个简单的网络版本计算器
服务器·开发语言·网络·网络协议·http·php
明月心9528 小时前
HTTP 9个请求方法
http
zl_dfq9 小时前
计算机网络 之 【http协议】(域名、url、http协议格式与细节)
http
Shanxun Liao9 小时前
WIN2022 搭建 HTTP 文件索引服务的完整步骤
网络·网络协议·http
%小农20 小时前
在cursor中使用server
网络·网络协议·http
西红市杰出青年1 天前
MCP 的三种数据传输模式教程(stdio / SSE / Streamable HTTP)
网络·网络协议·http·ai