我正在实现一个REST API,验证模块是基于JWT的。下面是我为它定义的HTTP状态码:
- 请求没有验证令牌:401 UNAUTHORIZED
- 授权令牌过期:410 UNAUTHORIZED
- 认证令牌不包含要求的声明:403 FORBIDDEN
- 授权被违反(即令牌被篡改):??
在令牌篡改的情况下,我应该使用什么HTTP状态码?401(未授权)还是417 (EXPECTATION_FAILED)?
如何判断令牌是否被篡改?在我看来,你只能知道它是对还是错。试图使用无效令牌的人在我看来应该是UNAUTHORIZED
。
EXPECTATION
_FAILED专门指Expect
标头,在这里似乎不合适。