JWT在请求流中的位置

来源:11-1 【理解】JWT原理剖析

ToExpress

2020-12-02

1.用户登录获取JWT信息后,去访问服务器资源,JWT在请求头中携带是有什么讲究吗,不能放在请求体吗?
我猜 是不是请求分为不同类型,如果是GET类型,后端获取不到请求体,只能放在url中,为了统一(jwt要么放url要么放body)就放header传递了?
2.请求体是否有传输大小限制,header呢?

写回答

1回答

阿莱克斯刘

2020-12-03

  1. 一般来说验证信息都会放在header的Authorization中,这并是针对jwt,使用其他的验证方式也会这样操作。

  2. “如果是GET类型,后端获取不到请求体,只能放在url中",这句话的说法其实是点问题的。因为在数据传输过程中url是明文传递,所以如果把身份验证信息放在url中传输,那就等于在裸奔。而header和body是可以被https加密的,而正如你所说,get请求没有body(其实可以有,但行业中一般认为get请求没有body),所以一般来说,我们要把身份信息放在header中

  3. 请求主体没有限制,header好像也没有限制(我记不清了,需要求证),但是如果header太长web服务器会无法处理,比如说tomcat(v8.0)允许的http请求header的最大值是8KB。每个web服务器的处理能力都有一点区别,不过在正常使用的前提下是绝对够用了。

0
0

.Net 开发电商后端API 从0到精通RESTful

. Net 实战+RESTful思想纵深课程,开发优雅RESTful风格API。

977 学习 · 547 问题

查看课程