String currentUserName(Authentication authentication) { return authentication.getName(); } AuthenticationPrincipal...很多时候我们自定义了用户对象UserDetails, 我们可以通过Spring Security 4.0提供的注解@AuthenticationPrincipal来获取当前用户的自定义UserDetails...如果CustomUser是UserDetails的实现,那么我们可以: @GetMapping("/currentusername") public String currentUserName(@AuthenticationPrincipal...customUser.getUsername(); } 更简单点的话: @GetMapping("/currentusername") public String currentUserName(@AuthenticationPrincipal...@Target({ElementType.PARAMETER, ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented @AuthenticationPrincipal
cn.netkiller.api.rest; import org.springframework.http.HttpStatus; import org.springframework.security.core.annotation.AuthenticationPrincipal...return "$Id$"; } @RequestMapping("auth") @ResponseStatus(HttpStatus.OK) public String auth(@AuthenticationPrincipal
EnableWebSecurity @EnableWebMvcSecurity注解还配置了一个Spring MVC参数解析解析器(argument resolver),这样的话处理器方法就能够通过带有@AuthenticationPrincipal
"/{commentId}/delete") public R delete(@PathVariable("commentId") Integer commentId, @AuthenticationPrincipal...("commentId") Integer commentId, String content, @AuthenticationPrincipal
回答: 这样的话处理器方法就能够通过带有@AuthenticationPrincipal注解的参数获得认证用户的principal(或username)。
8080/test/user/current/details @GetMapping("/user/current/details") public UserDetails getUserDetails(@AuthenticationPrincipal...localhost:8080/test/user/current/info @GetMapping("/user/current/info") public UserInfo getUserInfo(@AuthenticationPrincipal
request.getAttribute("javax.servlet.error.message"), null); } } 测试 写个控制器试试,大家也可以参考我控制器里面获取用户信息的方式,推荐使用 @AuthenticationPrincipal...@GetMapping("user") @PreAuthorize("hasAuthority('ROLE_USER')") public ResponseEntity user(@AuthenticationPrincipal...You are user", token); } @GetMapping("admin") @IsAdmin public ResponseEntity admin(@AuthenticationPrincipal
该值来自UserInfo参数: @GetMapping("/my") public R> getMyQuestions(Integer page, @AuthenticationPrincipal...AnswerDTO answerDTO, BindingResult bindingResult, @AuthenticationPrincipal
其中,needLogin接口,使用了AuthenticationPrincipal注解来获取Spring Security中上下文的用户(这个实在Filter里面设置的)。
httpSecurity.oauth2Login().defaultSuccessUrl("/weixin/h5/redirect") 在这个接口里可以通过@RegisteredOAuth2AuthorizedClient和@AuthenticationPrincipal...RegisteredOAuth2AuthorizedClient("wechat") OAuth2AuthorizedClient authorizedClient, @AuthenticationPrincipal
", method = RequestMethod.GET) public String echo(@PathVariable(value = "in") final String in, @AuthenticationPrincipal
Validated @RequestBody GetExamListReqVo reqVo, @AuthenticationPrincipal...Validated @RequestBody GetExamListReqVo reqVo, @AuthenticationPrincipal
在SystemController中,修改原有访问/index.html路径的处理方法: @GetMapping("/index.html") public String index(@AuthenticationPrincipal...该值来自UserInfo参数: @GetMapping("/my") public R> getMyQuestions(Integer page, @AuthenticationPrincipal
Validated AnswerDTO answerDTO, BindingResult bindingResult, @AuthenticationPrincipal...Comment---2 @RequestMapping("/post") public R post(CommentDTO commentDTO, @AuthenticationPrincipal
org.springframework.context.annotation.Configuration; import org.springframework.security.core.annotation.AuthenticationPrincipal...webClient) { this.webClient = webClient; } @GetMapping("/") public ModelAndView home(@AuthenticationPrincipal
RequestMapping("/create") public R create(QuestionDTO questionDTO, @AuthenticationPrincipal
如果您需要访问 Web 端点中当前经过身份验证的用户,可以在 a 中使用方法参数@RequestMapping,如下所示:@RequestMapping("/foo")public String foo(@AuthenticationPrincipal
如果您需要访问 Web 端点中当前经过身份验证的用户,您可以在 a 中使用方法参数@RequestMapping,如下所示: @RequestMapping("/foo") public String foo(@AuthenticationPrincipal
questions/my @GetMapping("/my") public R> getMyQuestions(Integer page, @AuthenticationPrincipal
@RequestMapping("/foo") public String foo(@AuthenticationPrincipal User user) { ... // do stuff with
领取专属 10元无门槛券
手把手带您无忧上云