1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 微信公众号获取openId——开发阶段

微信公众号获取openId——开发阶段

时间:2023-03-29 18:47:44

相关推荐

微信公众号获取openId——开发阶段

1、注册测试号

微信公众平台

2、理解获取逻辑

获得微信的openid,需要先访问微信提供的一个网址来获取code。

再访问微信提供的另一网址从而获取openId。

两个链接分别为:

https://open./connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=snsapi_base&state=STATE

https://api./sns/oauth2/access_token?appid=AppId&secret=AppSecret&code=CODE&grant_type=authorization_code

3、选择预览环境

第一个链接需要在微信客户端打开,可以选择微信开发者工具

选择公众号网页项目

打开后在地址栏中输入第一个URL地址,我这边后面跟的是跳转的网页

https://open./connect/oauth2/authorize?appid=wxa5b9c7f2a5ab9d1e&redirect_uri=http://192.168.3.130:3000&response_type=code&scope=snsapi_base&state=STATE

注意:这个redirect_uri填写的地址需要在公众号或者是测试号中网页账号中进行配置

跳转后可以看到地址栏中出现了两个参数,code和state,这个时候,我们就可以拿到我们需要的code

4、获取openId

获取到code后,就可以通过第二个链接,将所需的内容填写后,获取到openId了。

推荐从后端获取openId,可能会存在跨域、code不可用等等一系列问题,code只能使用一次。

@GetMapping("/getOpenId")@ApiOperation("获取OpenId")public JSONObject getOpenId(@RequestParam("code") String code){String url = "https://api./sns/oauth2/access_token?appid={appid}&secret={secret}&code={code}&grant_type={grant_type}";HashMap<String,String> params = new HashMap<>();params.put("appid","");params.put("secret","");params.put("code",code);params.put("grant_type","authorization_code");String result = new RestTemplate().getForEntity(url, String.class, params).getBody();return JSONObject.fromObject(result);}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。