spring security oauth2 如何修改返回格式?

/oauth/token 这个接口获取了access_token,但是是springsecurity默认的格式,我现在想把格式修改为自定义的格式
{

code:"",msg:"",data:{    access_token:"xxxx"}

}
这样的格式,请问应该怎么做。
使用的是springboot2.0 + springcloud


汪汪一只猫
浏览 3274回答 3
3回答

达令说

同问题,我也想知道

Rv_小样

利用切面去修改返回的格式@Component@Aspectpublic class AuthTokenAspect {     private Logger logger = LoggerFactory.getLogger(getClass());     /// @Around环绕某个方法(“postAccessToken”的这个方法)    @Around("execution(* org.springframework.security.oauth2.provider.endpoint.TokenEndpoint.postAccessToken(..))")    public Object handleControllerMethod(ProceedingJoinPoint pjp) throws Throwable {        // 放行        Response response = new Response();        Object proceed = pjp.proceed();        if (proceed != null) {        // ResponseEntity 为自定义的返回格式            ResponseEntity<OAuth2AccessToken> responseEntity = (ResponseEntity<OAuth2AccessToken>)proceed;            OAuth2AccessToken body = responseEntity.getBody();            if (responseEntity.getStatusCode().is2xxSuccessful()) {                response.setErrorcode(ErrorCode.OK.value);                response.setValue(ErrorCode.OK.memo);                response.setData(body);            } else {                logger.error("error:{}", responseEntity.getStatusCode().toString());                response.setErrorcode(ErrorCode.ERROR.value);                response.setValue("获取授权码失败");            }        }        return ResponseEntity                .status(200)                .body(response);    }}

犯罪嫌疑人X

这样的格式,请问应该怎么做。使用的是springboot2.0 + springcloud
打开App,查看更多内容
随时随地看视频慕课网APP