NetworkadmIn 2021-12-03 11:02 采纳率: 66.7%
浏览 412
已结题

微信公众号账号迁移 如何完成新旧服务号openID转换?

一、因服务号已进行过二次开发,包括模板消息、带参二维码等,同时用户openid也关联了许多其他基础用户信息,为了不影响用户在新服务号上的正常使用有以下几个问题需要解决:

  1. 获取到的openid用什么方式进行转换?(需提供解决思路)
  2. 或能够借助什么工具?(需提供工具名称及简要使用方式)
  3. 如何稳健快速地完成用户openid的转换?(需详细步骤)
  4. 开发配置等转移过程中有什么需要注意的?(确保完成转移后用户使用正常相关注意事项)

二、目前已通过【微信公众平台接口调试工具】完成了旧公众号openid的获取(有几万用户openid),工具地址:https://mp.weixin.qq.com/debug?token=135437352&lang=zh_CN

三、openid转换接口(摘自官方)
账号迁移后,粉丝的openid会变化,微信用户关注不同的公众号,对应的openid是不一样的,迁移成功后,粉丝的openid以目标帐号(即新公众号)对应的OpenID为准。但开发者可以通过开发接口转换openid,开发文档可以参考:
提供一个openid转换的API接口,当帐号迁移后,可以通过该接口:

  1. 将原帐号粉丝的openid转换为新帐号的openid。
  2. 将有授权关系用户的openid转换为新帐号的openid。
  3. 将卡券关联用户的openid转换为新帐号的openid。
    ◆ 原帐号:准备要迁移的帐号,当审核完成且管理员确认后即被回收。
    ◆ 新帐号:用来接纳粉丝的帐号。新帐号在整个流程中均能正常使用。
    一定要按照下面的步骤来操作。
  4. 一定要在原帐号被冻结之前,最好是准备提交审核前,获取原帐号的用户列表。如果没有原帐号的用户列表,用不了转换工具。如果原账号被回收,这时候也没办法调用接口获取用户列表。
    如何获取用户列表见这里:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140840
  5. 转换openid的API接口如下,可在帐号迁移审核完成后开始调用,并最多保留15天。若帐号迁移没完成,调用时无返回结果或报错。帐号迁移15天后,该转换接口将会失效、无法拉取到数据。
    ◆ URL:https://api.weixin.qq.com/cgi-bin/changeopenid?access_token=xxxxx
    此处token为新帐号的token
    ◆ 请求方式:post
    ◆ 请求数据:
    {
    "from_appid":"xxxxxxxx",//此处为原帐号的appid
    "openid_list":["oEmYbwN-n24jxvk4Sox81qedINkQ","oEmYbwH9uVd4RKJk7ZZg6S
    zL6tTo"]//需要转换的openid,即第1步中拉取的原帐号用户列表,这些必须是旧账号目前关注的才行,否则会出错;一次最多100个,不能多。
    }
◆ 输出数据:
{
"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。

  • 写回答

1条回答

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 系统已结题 12月30日
      • 已采纳回答 12月22日
      • 修改了问题 12月3日
      • 修改了问题 12月3日
      • 展开全部

      悬赏问题

      • ¥15 求一个超难的动态新增元素的 click 事件无效的解决办法。
      • ¥20 怎么修改mediawiki允许上传的文件大小?
      • ¥15 agrySEXPAYm 是毒吗
      • ¥50 Java实现注册登录实现数据库增删改查功能,数据库至少两个表
      • ¥20 求解R语言的数据分析问题
      • ¥20 求GD32F105和305解除读保护方法教程
      • ¥15 C++代码优化,复杂度太高,无法通过clang-tidy检查,用什么办法可以优=化
      • ¥15 关于跨链隐私保护方案
      • ¥15 node mongodb 根据id给子集合list添加对象 请问应该如何操作
      • ¥50 如何得到路径下的绝对路径并且回传到list上