---
title: Spring Security Oauth2.0刷新token时报错401 Unauthorized和invalid_client Bad client credentials的解决方法
date: 2019-03-05 14:39:43
categories: Spring Security
tags:
- spring
- token
- unauthorized
- 刷新
- postman
- username
- password
- security
- oauth2.0
- client_id
- client
- invalid_client
- credentials
- authorization
- 401
- refresh
- grant_type
- client_secret
- Basic Auth
---
关于这个问题,在网上找了很多,但是都没有解决我的问题。
首先,刷新token调用的接口是/oauth/token,其中参数有
grant_type=refresh_token
refresh_token=你的refresh token
这两个参数没有问题,但一直困扰我的是到底需不需要client_id和client_secret这两个参数。网上有的说要,有的没有又可以得出正常结果。
从结论开始说吧,client_id和client_secret这两个参数需要!!
如果不带这两个参数,返回的结果就是
但是用postman直接带上这两个参数,则会返回invalid_client Bad client credentials的错
这是为什么呢?经过我不断的尝试,发现不能直接这样加这两个参数。必须通过Authorization来加。选择type为Basic Auth,username为client_id,password为client_secret,如下:
这样就可以得到正确的结果了