package com.wms_admin.sys.controller; import cn.hutool.http.HttpUtil; import com.alibaba.fastjson.JSONObject; import com.wms_admin.sys.entity.WechatWorkBean; import com.wms_admin.utils.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @Slf4j @Api(tags = "企业微信登录") @RestController @RequestMapping("/user") public class WeChatWorkControoler { @Resource protected WechatWorkBean workBean; // 后台接口代码 @ApiOperation(value = "扫码登录重定向接口") @ApiImplicitParams(value = { @ApiImplicitParam(name = "code",value = "响应是否成功",dataTypeClass = String.class,required = true), }) @PostMapping(value = "/login/QYWechatLogin") public Result wechatLogin(@RequestParam("code") String code) { // 获取得到Access_token String accessToken = getAccessToken(); String userTicket = getUserTicket(accessToken, code); return Result.success(); } /** * 获取token * @return token */ public String getAccessToken() { String accessTokenUrl = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRET"; //获取token String url = accessTokenUrl.replaceAll("ID", workBean.getCropId()).replaceAll("SECRET", workBean.getAgentSecret()); String result = HttpUtil.get(url); JSONObject jsonObject = JSONObject.parseObject(result); return jsonObject.getString("access_token"); } public String getUserTicket(String Token, String code) { String UserTicketUrl = "https://qyapi.weixin.qq.com/cgi-bin/auth/getuserinfo?access_token=ACCESS_TOKEN&code=CODE"; //获取token String url = UserTicketUrl.replaceAll("ACCESS_TOKEN", Token).replaceAll("CODE", code);; System.out.println(url); String result = HttpUtil.get(url); JSONObject jsonObject = JSONObject.parseObject(result); System.out.println(jsonObject); return null; } }