yijianguanzhu/icloud-simple-service

为什么不用Authorization

Closed this issue · 7 comments

// 简单地从请求头X-Token中获取token
private static String resolveFromAuthorizationHeader( HttpHeaders headers ) {
return headers.getFirst( TokenConstant.TOKEN );
}

这里为什么不用默认的Authorization请求头,而选择自定义的X-Token,我正好也遇到需要修改的情况

// 简单地从请求头X-Token中获取token
private static String resolveFromAuthorizationHeader( HttpHeaders headers ) {
return headers.getFirst( TokenConstant.TOKEN );
}

这里为什么不用默认的Authorization请求头,而选择自定义的X-Token,我正好也遇到需要修改的情况

这套写法是沿用之前兼容使用websocket stomp的做法,websocket stomp的js不支持修改get请求时的参数,而原生的解析方法post请求和get请求的token名不一样。另外就是不太喜欢原生的解析方式。

5.4版本开始支持了

好吧,我倒没注意

我是在使用阿里云产品时, Authorization被它占用了,所以换成了X-Token,然后搜到了你也是这个自定义名,想着是不是相同的情况
我现在keytool生成的公钥放阿里云这边验签失败

我是在使用阿里云产品时, Authorization被它占用了,所以换成了X-Token,然后搜到了你也是这个自定义名,想着是不是相同的情况 我现在keytool生成的公钥放阿里云这边验签失败

我使用阿里云时没遇到这个情况,不清楚你使用的什么产品,验签失败你可以看看有没有相关说明文档

产品是API网关,里面有个jwt鉴权插件,需要填写jwk
我用 https://github.com/mitreid-connect/mkjwk.org 生成的jwk可以验签成功,用keytool生成的验签失败

阿里云那边找到问题原因是他们的鉴权插件不支持毫秒级的token有效期