微信小程序添加code2session接口

This commit is contained in:
keivn 2021-12-20 21:29:32 +08:00
parent ae57510418
commit f04023a492

View File

@ -58,4 +58,33 @@ public class WeChatMiniController {
throw new BadRequestException("获取小程序受权失败");
}
}
/**
* 小程序颁发token暂时模拟openid
*
* @return token字符串
*/
@PostMapping("/oauth/code2session")
@ApiOperation(value = "通过Code获取小程序session", notes = "通过code获取小程序session")
public ApiResult code2Session(@ApiParam(name = "code必传", required = true) @RequestParam("code") String code ) {
try {
log.info("正在获取小程序受权……");
WxMaJscode2SessionResult session = wxMiniService.getUserService().getSessionInfo(code);
log.info("正在获取小程序受权session为{}", session.toString());
// 先获取微信token
String sessionKey = session.getSessionKey();
String unionId = session.getUnionid();
String openId = session.getOpenid();
log.info("正在获取小程序受权结束unionId为{}sessionKey{}openId{}", unionId, sessionKey,openId);
return ApiResult.ok(session);
} catch (WxErrorException e) {
log.error("获取小程序受权失败 accessToken: code={}, error={}", code, e.getMessage());
throw new BadRequestException("获取小程序受权失败:" + e.getMessage() );
}
}
}