springBoot集成oAuth2,系列五(下载等location.href 如何使用token)

373 阅读1分钟

系列文章:

SpringBoot 集成 OAuth2 系列一(最简单配置篇)

SpringBoot 集成 OAuth2 系列二(password篇)

springBoot集成oAuth2,系列三(UserDetailsService篇)

springBoot集成oAuth2,系列四(前后端分离web页面中使用oauth2跨域问题篇)

springBoot集成oAuth2,系列五(下载等location.href 如何使用token)

springBoot集成oAuth2,系列六(如何获取refresh_token)

springBoot集成oAuth2,系列七(根据refresh_token获取access_token)

springBoot集成oAuth2,系列八(使用redis存储token的时候,报错: java.lang.NoSuchMethodError: org.springframework.data.redis.connection.RedisConnection.set)

前言

经过前面几篇文章后,ajax 请求携带token信息已经可以了,但是今天遇到一个问题,那就是下载这种location.href 的时候没法子复制header

解决办法

请求直接加参数access_token就可以,类似如下方式

http://localhost:8080/dcims/sys/user-menu/selectMenuByUser?name=mayanze&access_token=eb3c242b-426d-4619-97cb-5f6a61e9fb7e

解决过程

参考官方文档:projects.spring.io/spring-secu…

  1. resourecs 服务器的其他扩展点(例如,tokenExtractor用于从传入请求中提取令牌)

image.png

2.tokenExtractor的实现类BearerTokenExtractor 中有这么一段代码

image.png

意思呢就是先从header拿Authorization,没有则从url中拿取access_token