Java 使用外部客户端添加授权令牌
我有两个服务连接到注册表,其中一个需要从另一个查询一些数据,令牌需要传递到端点 我尝试了以下方法,但没有成功,端点的行为就像没有提供令牌一样Java 使用外部客户端添加授权令牌,java,spring,jwt,jhipster,feign,Java,Spring,Jwt,Jhipster,Feign,我有两个服务连接到注册表,其中一个需要从另一个查询一些数据,令牌需要传递到端点 我尝试了以下方法,但没有成功,端点的行为就像没有提供令牌一样 @GetMapping("/api/users/find") @Headers("Authorization: Bearer {token}") Optional<UserDTO> findUserByEmail( @Param("token")
@GetMapping("/api/users/find")
@Headers("Authorization: Bearer {token}")
Optional<UserDTO> findUserByEmail(
@Param("token") String token, @RequestParam("email") String email);
@GetMapping(“/api/users/find”)
@标头(“授权:承载{令牌}”)
可选FindUserByMail(
@Param(“token”)字符串token,@RequestParam(“email”)字符串email);
@GetMapping(“/api/users/find”)
可选FindUserByMail(
@RequestHeaders(“授权”)字符串令牌,@RequestParam(“电子邮件”)字符串电子邮件);
@GetMapping(“/api/users/find”)
可选FindUserByMail(
@HeaderMap映射头,@RequestParam(“email”)字符串email);
应该可以使用此@RequestHeader(value=“Authorization”)字符串授权
,但请确保您传递了正确的值,该值必须类似于承载令牌
您的此代码绝对正确
@GetMapping("/api/users/find")
Optional<UserDTO> findUserByEmail(
@RequestHeaders("Authorization") String token, @RequestParam("email") String email);
您的标题谈到了假装客户端,但您只显示来自服务器的代码。为什么要修改接收方端点的代码,JHipster的默认安全配置应该需要JWT,无需更改;只应更改调用方。如何使用
SecurityUtils.getCurrentUserJWT()
在调用者中检索令牌?你有没有用大摇大摆或卷曲来测试你的终点?谢谢,这是我遗漏的
@GetMapping("/api/users/find")
Optional<UserDTO> findUserByEmail(
@HeaderMap Map<String, Object> headers , @RequestParam("email") String email);
@GetMapping("/api/users/find")
Optional<UserDTO> findUserByEmail(
@RequestHeaders("Authorization") String token, @RequestParam("email") String email);
token = "Bearer " + token;
findUserByEmail(token,email);