PHP实现微信扫码登陆(五)--服务端核心代码编写

主要使用的微信官方文档:
生成带参数的二维码
接收事件推送
获取access_token
获取用户基本信息

一. 详细代码可在github查看

https://github.com/helloJiu/weixinLogin
拉取代码后, 执行 composer update

二. 开发中遇到的坑

  1. 公众号如果没有认证, 不能获取用户详细信息
    参照https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1433401084
  2. 微信服务器发送到后台的xml数据, 解析后, 如openid, scene_id, 然后再使用
    如:
case "subscribe":
      // 不trim可能会发生不可描述的错误.惨..
      $fromUserName = trim($postObject->FromUserName);
      $scene = trim($postObject->EventKey);
      $scene = ltrim($scene, 'qrscene_');
      $this->handleMessage($fromUserName, $scene);
      $content = 'hello, 欢迎使用发标啦!';
      break;

否则可能遇到很奇怪的错误

  1. 微信公众平台白名单一定把自己服务器的ip地址加进去
  2. 微信服务器配置需要启用

参照微信文档和博客如下列:
https://ninghao.net/blog/1441

你可能感兴趣的:(PHP实现微信扫码登陆(五)--服务端核心代码编写)