今天要分享一个主题:如何利用微信公众号的OpenID做营销


首先,我们要了解几个点


一、openId是什么?

openId是用户在当前公众号下的唯一标识(‘身份证’),就是说通过这个openId,就能区分在这个公众号下具体是哪个用户。



二、openId有什么用?


假如用户A在当前公众号下购买了一件商品,用户的下单信息肯定要存储到后台数据库,那根据什么进行存储呢?openId是用户在当前公众号下的唯一标识,通过openId和用户的下单购买信息进行键值对的数据绑定。那么我要查询该用户购买过什么商品,就能够通过openId去查询,并且数据是唯一的,不会和另外的用户数据有冲突。


拓展:UnionID:一个商家或公司可能会有多个公众号,假如用户A同时都关注了这个公司下面的三个公众号,那么这个用户就会有三个openId(一个公众号就对应一个openID)。如果作为开发者的我们,要对这个用户在这三个公众号下消费的数据进行汇总,我怎么获取到这三份数据(同一用户的)?答案是 UnionId,微信开发者文档:如果开发者拥有多个移动应用、网站应用和公众帐号,可通过获取用户基本信息中的unionid来区分用户的唯一性,因为同一用户,对同一个微信开放平台下的不同应用(移动应用、网站应用和公众帐号),unionid是相同的。就是说如果要获取用户在同一公司不同公众号下的数据,后台表结构不但要关联openId,还要关联UnionId。



三、怎么获取openId?


(一)登录微信公众平台后台获取公众号的AppId,设置回调地址。

回调地址设置页面向导:开发>接口权限>网页服务>网页授权>修改。开发的项目需要放到已经解析好服务器域名的服务器下,同时把Mp***.text文件放到服务器根目录下,此时你的服务器必须能联通外网也就是有公网IP,并且80端口是打开的,可以使用阿里云等服务器,默认配置就可以了。


(二)根据开发需要,静默授权还是非静默授权

①静默授权:snsapi_base,没有弹窗,只能获取用户的openId。

②非静默授权:snsapi_userinfo,有弹框弹出需要用户手动点击确认授权。可以获取openId,用户的头像、昵称等




四、获取OpenID的必要条件:


必要条件

已经认证的公众号(企业号可以,个人号是不能绑定H5的)

https认证域名,没有认证的域名微信中不能配置回调地址

微信公众平台认证通过,并创建app


操作步骤

获取code (需要配置选取scope=snsapi_base模式,code五分钟过期,使用过一次过期)

通过code就可以配置参数获取openId(注意这个openId和access_token是一起获取的)



五、                                                                                                                                                                                                                                                              


相关资料: