openid微信公众平台和小程序都有,不同用户在同一公众平台或是小程序中openid可以用于区别不同用户,遗憾的是openid只是应用于当前公众号或小程序。
unionid微信公众平台和小程序都有,同一公司多个公众号或是小程序如果想要做用户数据关联,unionid是一个不错的解决方案,不过要在微信开放平台上把你想要共享的公众号或是小程序进行绑定。
言归正传先介绍一下 小程序如何获取openid?
图一图二
上面的两个表格已经详情介绍了如何获取openid,我在这里补充一下注意事项,https://api.weixin.qq.com/sns/jscode2session虽然上面写的是微信官方的接口,但是我们没法直接使用,官方的解释是这个接口最好是后台调用,前台无需调用,也就是说你要用这个接口让公司做后台开发人员另写一个接口传递的参数是这个接口要用的请求参数,让后台调用该网址以及你所传递的参数,后台人员直接返回接口的返回值就行。
上面介绍了openid如何获取,下面介绍如何获取unionid?
图三
图4
图3,4是微信里面关于数据签名的一些介绍,我们所要找的unionid就是要被解密的数据,其中图4中画圈的就是数据解析算法,后台人员一看就会里面有demo,支持的后台语言是php,node,c++,paython目前仅有这四个语言的解析包,同介绍openid一样,让后台人员另写一个接口把你要传递的参数,通过微信的解析包解析把结果返回给你里面就会有你要用的unionid数据。后台要用到的参数分别是appid,sessionKey,encryptedData,iv。这四个参数,其中appid在你在注册了开发者后微信公众平台就有,encryptedData和iv如图5
图 5最后一个sessionKey的获取,如图二就是在获取openid的那个接口的返回值中。
希望本文对您有所帮助,如您在实际测试中有遇到各种奇怪的问题请在下方留言,我要是会我会帮您去解决,如果后面有时间的话我会写两个公共的接口供大家测试使用。
网友评论