1. 程式人生 > 其它 >企業微信應用接入獲取UserId流程

企業微信應用接入獲取UserId流程

技術標籤:java

企業微信應用接入獲取UserId流程

  • 1 建立應用,獲取企業ID + 應用ID(AgentId) + 應用金鑰(Secret)
  • 2 通過https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRET介面獲取到accessToken,並存入redis or 全域性靜態變數中
  • 3 配置可信域名 (可以域名+埠)
  • 4-1 JAVA驗證方式一
	@RequestMapping("/")
	public class TxtApi {
	    @GetMapping("你得檔名稱.txt"
) @ResponseBody public String text(){ return "你得檔名稱內容"; } }
  • 4-2 nginx 驗證方式二
server {
         listen      你的埠;
         server_name  localhost;
	
         location / {
            root   C:\Users\Administrator\Desktop\;
         }
    }
  • 5 構建系統入口路徑與回撥地址
@Controller
@RequestMapping("api/sys") @Slf4j public class SystemController { @GetMapping("getCode") public ModelAndView getCode(String code, HttpSession session){ //獲取userId String result = HttpUtil.getResult("https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo?access_token=ACCESS_TOKEN&code=CODE"
.replace("ACCESS_TOKEN", accessToken(以前的文章有說怎麼獲取)).replace("CODE", code)); JSONObject jsonObject = JSONObject.fromObject(result); log.info("獲取資料 {}",jsonObject); String userId = jsonObject.getString("UserId"); return new ModelAndView(new RedirectView("前端頁面路徑?userId="+userId)); } /** * 系統路徑構建 * @return */ @GetMapping("buildCode") public String buildCode(){ String buildUrl = ""; //回撥地址 String url = "可信域名字首" + "api/sys/getCode"; return "redirect:"+ "https://open.weixin.qq.com/connect/oauth2/authorize" + "?appid=CORPID"//企業id + "&redirect_uri=REDIRECT_URI"//回撥地址 + "&response_type=code"//固定填寫 + "&scope=snsapi_base"//固定填寫 + "&state=STATE"//自定義欄位 + "#wechat_redirect".replace("CORPID", CORP_ID).replace("REDIRECT_URI", url); } }
  • 6.成功再頁面上獲取使用者資料
    - userId: "10010717"