Spring Security Oauth2.0刷新token时报错401 Unauthorized和invalid_client Bad client credentials的解决方法

  • A+
所属分类:Spring Security

关于这个问题,在网上找了很多,但是都没有解决我的问题。

首先,刷新token调用的接口是/oauth/token,其中参数有

grant_type=refresh_token

refresh_token=你的refresh token

这两个参数没有问题,但一直困扰我的是到底需不需要client_idclient_secret这两个参数。网上有的说要,有的没有又可以得出正常结果。

从结论开始说吧,client_idclient_secret这两个参数需要!!

如果不带这两个参数,返回的结果就是

Spring Security Oauth2.0刷新token时报错401 Unauthorized和invalid_client Bad client credentials的解决方法

但是用postman直接带上这两个参数,则会返回invalid_client Bad client credentials的错

Spring Security Oauth2.0刷新token时报错401 Unauthorized和invalid_client Bad client credentials的解决方法

这是为什么呢?经过我不断的尝试,发现不能直接这样加这两个参数。必须通过Authorization来加。选择type为Basic Auth,username为client_id,password为client_secret,如下:

Spring Security Oauth2.0刷新token时报错401 Unauthorized和invalid_client Bad client credentials的解决方法

这样就可以得到正确的结果了

Spring Security Oauth2.0刷新token时报错401 Unauthorized和invalid_client Bad client credentials的解决方法

ZPY

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: