• 我的小程序之旅九:微信开放平台unionId机制介绍


    一、机制说明

    参考文档:https://developers.weixin.qq.com/minigame/dev/guide/open-ability/union-id.html

    如果开发者拥有多个移动应用、网站应用、和公众帐号(包括小程序),可通过 UnionID 来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号(包括小程序),用户的 UnionID 是唯一的。换句话说,同一用户,对同一个微信开放平台下的不同应用,UnionID是相同的。

    二、获取微信小程序的unionId

    1、微信开放平台绑定小程序

    2、调用wx.login()方法获取code

    3、使用code调用

    https://api.weixin.qq.com/sns/jscode2session?appid=appId&secret=secret&js_code=jsCode&grant_type=authorization_code

    返回值如下

    {
    	"unionid":"oQ19D6OLhLKzJTOFJyx5nj2Yd-_g",
      "openid":"oKeNO44zXYi_sp9WqKZaHQwWvdmU",
      "session_key":"dFTHtJhhZcNvHvsvR1KnYg=="
     }

    三、获取微信公众号的unionId

    1、微信开放平台绑定公众号

    2、配置服务回调域名和接口

    3、当有事件(如关注公众号、在公众号里发消息),微信就会回调服务器地址并且将openId传过来

    可以使用如下接口进行接收

    /**
      * 公众号回调接口
      */
    @RequestMapping(value = "/gzh/callback", method = RequestMethod.POST, produces = "application/xml; charset=UTF-8")
    public String callback(@RequestBody String requestBody,
                           @RequestParam("signature") String signature,
                           @RequestParam("timestamp") String timestamp,
                           @RequestParam("nonce") String nonce,
                           @RequestParam("openid") String openid,
                           @RequestParam(name = "encrypt_type", required = false) String encType,
                           @RequestParam(name = "msg_signature", required = false) String msgSignatur

    4、调用https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN获取unionId

    参考文档:https://developers.weixin.qq.com/doc/offiaccount/User_Management/Get_users_basic_information_UnionID.html#UinonId

    返回值如下:

    {
        "subscribe": 1, 
        "openid": "o6_bmjrPTlm6_2sgVt7hMZOPfL2M", 
        "language": "zh_CN", 
        "subscribe_time": 1382694957,
        "unionid": " o6_bmasdasdsad6_2sgVt7hMZOPfL",
        "remark": "",
        "groupid": 0,
        "tagid_list":[128,2],
        "subscribe_scene": "ADD_SCENE_QR_CODE",
        "qr_scene": 98765,
        "qr_scene_str": ""
    }
  • 相关阅读:
    省选测试13
    省选测试12
    省选测试11
    省选测试9
    省选测试10
    省选测试8
    省选测试7
    省选测试6
    倍增 LCA && ST表
    博客园markdown
  • 原文地址:https://www.cnblogs.com/wlovet/p/15944972.html
Copyright © 2020-2023  润新知