根据公司的需求,把旧的公众号的用户数据迁移到新的公众号上,这时就会发现,老的数据怎么办,特别是用户的openid匹配不上,腾讯提供了相对应的接口文档。

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

  1. 将原帐号粉丝的openid转换为新帐号的openid。
  2. 将有授权关系用户的openid转换为新帐号的openid。
  3. 将卡券关联用户的openid转换为新帐号的openid。

◆ 原帐号:准备要迁移的帐号,当审核完成且管理员确认后即被回收。
◆ 新帐号:用来接纳粉丝的帐号。新帐号在整个流程中均能正常使用。

一定要按照下面的步骤来操作。

  1. 一定要在原帐号被冻结之前,最好是准备提交审核前,获取原帐号的用户列表。如果没有原帐号的用户列表,用不了转换工具。如果原账号被回收,这时候也没办法调用接口获取用户列表。
    如何获取用户列表见这里:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140840

  2. 转换openid的API接口如下,可在帐号迁移审核完成后开始调用,并最多保留15天。若帐号迁移没完成,调用时无返回结果或报错。帐号迁移15天后,该转换接口将会失效、无法拉取到数据。
    ◆ URL:http://api.weixin.qq.com/cgi-bin/changeopenid?access_token=xxxxx
    此处token为新帐号的token
    ◆ 请求方式:post
    下面是php代码演示:

  3.     public function http($url, $method, $postfields = null, $headers = array(), $debug = false){$ci = curl_init();/* Curl settings */curl_setopt($ci, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);curl_setopt($ci, CURLOPT_CONNECTTIMEOUT, 30);curl_setopt($ci, CURLOPT_TIMEOUT, 30);curl_setopt($ci, CURLOPT_RETURNTRANSFER, true);switch ($method) {case 'POST':curl_setopt($ci, CURLOPT_POST, true);if (!empty($postfields)) {curl_setopt($ci, CURLOPT_POSTFIELDS, $postfields);//$this->postdata = $postfields;}break;}curl_setopt($ci, CURLOPT_URL, $url);curl_setopt($ci, CURLOPT_HTTPHEADER, $headers);curl_setopt($ci, CURLINFO_HEADER_OUT, true);$response = curl_exec($ci);$http_code = curl_getinfo($ci, CURLINFO_HTTP_CODE);if ($debug) {echo "=====post data======\r\n";var_dump($postfields);echo '=====info=====' . "\r\n";print_r(curl_getinfo($ci));echo '=====$response=====' . "\r\n";print_r($response);}curl_close($ci);return array($http_code, $response);}//--用户表的转openid--最多只能查询200个openidpublic function index(){   $params = request()->param();$curPage = isset($params['page'])  ? $params['page'] : "1";$pageSize = isset($params['size']) ? $params['size'] : "200";$limitpage = ($curPage-1)*$pageSize;//获取用户的openid$sql = "select openid,user_id from yp_live_anchor_user where is_deleted=0 and openid != '' limit $limitpage,$pageSize";$res= DB::query($sql);$a= $this->getWxAccessToken();$openidArray = [];foreach ($res as $k=> $v) {$openidArray[] = $v['openid'];}$url='https://api.weixin.qq.com/cgi-bin/changeopenid?access_token='.$a;$data['from_appid']="xxxxxxxxxxxx";$data['openid_list']= $openidArray; // dump($data);die();$data = json_encode($data);$token_data = $this->http($url,"POST", $data);$array = json_decode($token_data[1], TRUE);//获取到新的openid和老的openiddump($array);die();}/*** 1.获取 access_token* @param $data 接受数据|返回数据  默认为空* @param * @return access_token*/protected function  getWxAccessToken(){$appid = "xxxxx";$AppSecret = "xxxxx";$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$AppSecret;$dataResult=http_get($url,array());$accessTokenRuselt = json_decode($dataResult, true);return $accessTokenRuselt['access_token'];}

php 公众号迁移,openid转换相关推荐

  1. openid转换接口——公众号迁移(PHP接口)

    openid转换接口 完善了一下官网提供的接口,下面是php具体调用的示例,返回结果就不展示了,一些相关错误提示在下面的文档有描述. /*** openid转换接口(公众号迁移使用)* Name: c ...

  2. openid转换接口--微信公众号迁移

    微信公众号迁移,原文地址:openid转换接口 请求postman格式: https://api.weixin.qq.com/cgi-bin/changeopenid?access_token=你的t ...

  3. 微信公众号迁移主体变更需提供哪些材料以及迁移的完整流程

    微信公众号不同主体提交迁移前仍须迁移函和迁移公证,微信公号平台会委托第三方独立审查子公司对迁移函和迁移公证进行审查,迁移时还仍须缴交给审查公司300元迁移审查费.迁移.公证书在线办理可咨询57运营网, ...

  4. 微巨科技:公众号迁移公证流程及注意事项

    文章来源:微巨科技 公证是指帐号主体双方共同到公证处现场签署<微信公众号迁移申请函>,由公证处公证员对迁移函进行印鉴公证的过程. 需提交的材料:(所需资料以各地公证机关的要求为准,各地要求 ...

  5. 通过公众号迁移快速开通留言功能方法

    最近常常听自媒体人抱怨 "今年6月份注册了自己的微信公众号,就写写自己的小杂文啊.美妆种草啊之类的,但是一直没有留言功能.查了一下发现留言功能应该是基本自带的功能啊--为什么我的公众号没有评 ...

  6. 微信公众号获取OpenId(未授权)(需要关注公众号)

    文章的一开始,我先解释下微信公众号的openId. openId是微信对于用户的唯一辨识,只要有用户关注你的公众号,微信会通过公众号和用户微信号通过一种算法生成一种唯一标识码,也就是openId,用数 ...

  7. 手把手教你微信公众号迁移_四步教你怎么迁移微信公众号

    教你迁移微信公众号_迁移完成后,原账号就注销了,无法再登陆公众号后台,登进去是这样的界面 微信公众号迁移说难不难,说简单也不简单.下面用4步来教会你们操作微信公众号迁移,每一点都写的非常详细,记得收藏 ...

  8. 微信公众号-根据openID给指定用户发送信息

    微信公众号-给指定用户发送信息 文章目录 微信公众号-给指定用户发送信息 前言 一.开通模板消息 二.项目使用步骤 1.引入库 2.直接上代码 controller service 其他一些封装的类 ...

  9. 微信公众号迁移丨如何迁移微信公众号 最详细公众号迁移流程和方法

    微信公众号迁移丨如何迁移微信公众号 最详细微信公众号迁移流程和方法 微信公众号如何迁移?微信公众号迁移公证书需要准备哪些资料? 怎么迁移微信公众号! 教你迁移微信公众号_迁移完成后,原账号就注销了,无 ...

  10. 微信公众号公证书丨公众号迁移网络公证办理完全步骤指南

    关键词: 公众号迁移.公众号留言.公众号评论 一.公众号迁移线线上公证 微信公众平台"帐号迁移"是官方推出的变更公众号主体的流程,由原公众帐号发起,目标公众帐号配合迁移验证,迁移过 ...

最新文章

  1. python实操培训_python实训day1
  2. Nginx 从零搭建
  3. shell脚本编程-结构化命令2-for命令
  4. 跑步app保活_android判断不同手机厂商,打开允许后台运行APP弹窗
  5. java中的servlet是线程安全的嘛_Java面试题:Servlet是线程安全的吗?(转)
  6. Android root概念
  7. Apache Fluo:填充Google搜索索引的Percolator的实现
  8. 移动端调起数字键盘的问题
  9. Linux内核 eBPF:Hacking Linux USDT with Ftrace
  10. elk 安装与所遇问题
  11. 【网络安全工程师面试合集】—黑客常用的端口及攻击方法汇总
  12. 仅109美元 搞一套Evive物联网开发工具包回家耍
  13. POJ 1981 Circle and Points 单位圆覆盖
  14. Idea搭建SpringCloud(四)------利用Feign实现负载均衡
  15. 小米路由器显示网络未连接到服务器,小米路由器异常排查的常见问题与使用技巧...
  16. 汤姆猫代码python_用树莓派实现会说话的汤姆猫
  17. MySQL数据库安全
  18. 汇编语言(王爽第三版)实验一
  19. HTTP 请求头中的 X-Forwarded-For,X-Real-IP(nginx)
  20. CMMI中所有的22个KPA(关键过程域)

热门文章

  1. AUTOCAD——窗口缩放
  2. 主成分分析(PCA)及其可视化——python
  3. tp3无法加载控制器index_ThinkPHP3.2下,get传参s=xxx时为何提示无法加载控制器xxx?...
  4. CSDN的浏览器助手 —— 油猴脚本
  5. python中xlrd.open_workbook_python处理exce方法:xlrd、openyxl
  6. e5服务器系列天梯图,最新的至强e5处理器天梯图
  7. 阿里云域名的注册到使用流程
  8. cad文字宽度因子_字体宽度因子改不了 cad宽度因子无法修改
  9. CAD查找属性快文字
  10. 谷歌浏览器,添加手机模拟器