一、因服务号已进行过二次开发,包括模板消息、带参二维码等,同时用户openid也关联了许多其他基础用户信息,为了不影响用户在新服务号上的正常使用有以下几个问题需要解决:
二、目前已通过【微信公众平台接口调试工具】完成了旧公众号openid的获取(有几万用户openid),工具地址:https://mp.weixin.qq.com/debug?token=135437352&lang=zh_CN
三、openid转换接口(摘自官方)
账号迁移后,粉丝的openid会变化,微信用户关注不同的公众号,对应的openid是不一样的,迁移成功后,粉丝的openid以目标帐号(即新公众号)对应的OpenID为准。但开发者可以通过开发接口转换openid,开发文档可以参考:
提供一个openid转换的API接口,当帐号迁移后,可以通过该接口:
◆ 输出数据:
{
"errcode": 0,
"errmsg": "ok",
"result_list": [
{
"ori_openid": "oEmYbwN-n24jxvk4Sox81qedINkQ",
"new_openid": "o2FwqwI9xCsVadFah_HtpPfaR-X4",
"err_msg": "ok"
},
{
"ori_openid": "oEmYbwH9uVd4RKJk7ZZg6SzL6tTo",
"err_msg": "ori_openid error"//这个openid目前没有关注旧公众号
}
]
}
◆ 错误码:
63178:from_appid参数错误,和调用的账号并没有迁移关系
Ori_openid error:openid目前没有关注旧公众号。或者是将from_appid搞错了,用成了新帐号的appid。
题主如果有绑定过开发平台,那么可以通过unionid来关联,没有的话通过新账号的配置信息获取access token后调用转换接口进行转换就行了
access token获取参考此文
https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Get_access_token.html
不知道一次能传递多少个,建议是多次调用接口。
数据库表新增new_openid字段,用于调用接口获取数据后,将返回的new_openid通过旧的openid进行更新