如何用Postman测试受Google OAuth2 Client保护的Spring Boot REST API
解决Postman调用Google OAuth2保护的Spring Boot REST API认证问题
方法一:用Postman内置OAuth2授权功能直接获取令牌
- 打开Postman,进入目标API请求页面
- 切换到Authorization标签页,授权类型选择OAuth 2.0
- 在Configure New Token弹窗中填写以下参数:
- Token Name:自定义标识名(如Google OAuth Token)
- Grant Type:选择Authorization Code
- Callback URL:必须与Spring Boot配置里的
redirect-uri完全一致(例如http://localhost:8080/login/oauth2/code/google) - Auth URL:填入Google授权地址
https://accounts.google.com/o/oauth2/v2/auth - Access Token URL:填入
https://oauth2.googleapis.com/token - Client ID:你的Google OAuth应用Client ID
- Client Secret:你的Google OAuth应用Client Secret
- Scope:填写API所需权限(如
openid email profile)
- 点击Get New Access Token,Postman会弹出浏览器窗口引导完成Google登录
- 登录成功后,Postman自动获取Access Token,点击Use Token,后续请求会自动携带
Authorization: Bearer <token>请求头
方法二:手动捕获认证Cookie并在Postman中使用
如果必须用Cookie方式认证:
- 先在浏览器中正常访问API,完成Google登录流程,确认能获取正常API响应
- 打开浏览器开发者工具(F12),切换到Application标签,找到对应域名下的Cookies,复制认证相关Cookie(通常是
JSESSIONID或自定义认证Cookie) - 回到Postman的目标请求,切换到Headers标签页
- 添加名为
Cookie的请求头,值填入刚才复制的Cookie内容(如JSESSIONID=xxxxxx) - 发送请求即可携带认证Cookie访问API
额外注意事项
- 确保Spring Boot的CORS配置允许Postman的请求来源
- Authorization Code模式获取的令牌有效期通常为1小时,过期后重新获取即可
- 生产环境建议使用令牌方式认证,比直接复制Cookie更安全
内容的提问来源于stack exchange,提问作者jonathan-lee-devel
相关产品推荐
相关产品推荐

