zoukankan      html  css  js  c++  java
  • Laravel wxxcx 微信小程序获取用户信息

    wxxcx 是Laravel5微信小程序登录获取用户信息扩展

    部署

    1
    2
    3
    4
    5
    6
    7
    8
    # 安装
    $ composer require iwanli/wxxcx
    # 注册服务
    # 在 /config/app.php 中的 providers 数组添加
    IwanliWxxcxWxxcxServiceProvider::class,
    # 发布配置文件
    $ php artisan vendor:publish --tag=wxxcx
    # 即生成 config/wxxcx.php,在其中填写 appid 和 secret

    获取 openid, session_key, userInfo

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    ...

    大专栏  Laravel wxxcx 微信小程序获取用户信息 class="line">use IwanliWxxcxWxxcx;

    class WxxcxController extends Controller
    {
    protected $wxxcx;

    function __construct(Wxxcx $wxxcx)
    {
    $this->wxxcx = $wxxcx;
    }

    public function getWxUserInfo()
    {
    // code 在小程序端使用 wx.login 获取
    $code = request('code', '');
    // encryptedData 和 iv 在小程序端使用 wx.getUserInfo 获取
    $encryptedData = request('encryptedData', '');
    $iv = request('iv', '');

    // 根据 code 获取用户 openid, session_key
    $loginInfo = $this->wxxcx->getLoginInfo($code);

    // 获取解密后的用户信息
    $userInfo = $this->wxxcx->getUserInfo($encryptedData, $iv);

    return [
    "loginInfo" => $loginInfo,
    "userInfo" => $userInfo,
    ];

    /*
    数据格式:
    loginInfo : {
    openid : "xxx",
    session_key : "xxx",
    }
    userInfo : {
    openId: "xxx",
    nickName: "用户昵称",
    gender: 1,
    language: "zh_CN",
    city: "",
    province: "Beijing",
    country: "China",
    avatarUrl: "用户头像",
    watermark: {
    timestamp: 1544277591,
    appid: "xxx"
    }
    }
    */
    }
    }

    备注

    1
    openid 即用户在当前小程序中的唯一标识,不同的小程序 openid 不同
  • 相关阅读:
    session的一个问题
    (Struts)ActionForm类及表单数据验证
    javaee添加验证码
    struts的上传和下载
    logic标签用法
    jstl标签用法
    bean标签
    /WEB-INF/userManage.jsp(31,82) Unterminated ${ tag
    自定义EL
    jstl
  • 原文地址:https://www.cnblogs.com/lijianming180/p/12347632.html
Copyright © 2011-2022 走看看