zoukankan      html  css  js  c++  java
  • PHP 微信公众号/小程序获取openid,用户信息

    1.获取code (获得openid的前置条件)

    地址:https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=redirectUrl&response_type=code&scope=snsapi_userinfo&state=1&connect_redirect=1#wechat_redirect

    需要填写APPID,回调地址 redirectUrl(拿到code后会回到这个地址,需要自己接收code),

    2.获取openid (获得用户信息的前置条件)

    公众号地址:https://api.weixin.qq.com/sns/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

    小程序地址:https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=CODE&grant_type=authorization_code

     需要填写APPID,密钥AppSecret,上个操作获取的CODE     这里不止获取到了openid,还有一个access_token需要记录

    3.获取用户信息

    地址:https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN

    需要填写上个操作获得的openid和access_token

    例子:通过微信访问第一个链接(可以草料二维码生成,然后微信直接扫码),获取code进入这个回调的方法,通过get方法访问第2个地址,获取openid和access_token,

       /**
    * 获取用户openid
    */
    public function get_openid()
    {
    $input = input();
    if(empty($input['code']))
    $this->error('用户code不能为空');

    $code = trim($input['code']);

    $re = curl_get($this->templateMessageUrl(3,$code));//获取公众号/小程序openid的地址
    $re = json_decode($re, true);

    p($re);die;
    }

    然后再用获取到的两个值访问第3个地址即可获取用户信息。

    。。。省略

  • 相关阅读:
    PHP preg_replace_callback_array() 函数
    PHP preg_quote() 函数
    PHP preg_match() 函数
    SqlHelper工具类
    ArrayListd的长度问题
    事务
    Socket通信
    时间戳,产生随机数
    背景大小 | background-size (Backgrounds & Borders)
    背景图片位置 | background-position (Backgrounds & Borders)
  • 原文地址:https://www.cnblogs.com/youantianqin/p/12036876.html
Copyright © 2011-2022 走看看