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 不同

Laravel wxxcx 微信小程序获取用户信息的更多相关文章

  1. 微信小程序 获取用户信息并保存登录状态

    微信小程序 获取用户信息并保存登录状态:http://www.360doc.com/content/18/0124/11/9200790_724662071.shtml

  2. 微信小程序获取用户信息,解密encryptedData 包括敏感数据在内的完整用户信息的加密数据

    package com.iups.wx.wxservice; import java.io.UnsupportedEncodingException; import java.security.Alg ...

  3. 微信小程序 获取用户信息 encryptData解密 C#版本

    最近学习小程序开发,需要对encryptData解密,获取用户信息,官方源码没有C#版本,网上的资料比较杂,有的使用还有问题,下面贴一下自己亲试可以使用的一个源码 1.code 换取 session_ ...

  4. 微信小程序获取用户信息“授权失败”场景的处理

    很多的时候我们在处理小程序功能的时候需要用户获取用户信息,但是呢为了信息安全,用户不授权导致授权失败场景:但是小程序第二次不在启动授权信息弹层,为了用户体验,可以用以下方式处理: function i ...

  5. 微信小程序-获取用户信息(getUserInfo)

    当小程序抹杀掉这个接口的时候,多少人心凉了.. 作为一个初级web前端开发,我是更加懵逼,小程序员跑路了... 当时以及现在用的办法就是: 1.增加一个登陆或授权页 2.上线以后自动获取 3.增加一个 ...

  6. 微信小程序 获取用户信息授权

    login.wxml界面 获取用户授权可以用微信提供的接口 wx.authorize, 但是获取用户信息的授权用这个接口不会弹出授权窗口 <button class="submit-b ...

  7. [转]wx.getUserInfo(OBJECT) 微信小程序 获取用户信息

    本文转自:http://mp.weixin.qq.com/debug/wxadoc/dev/api/open.html wx.getUserInfo(OBJECT) 获取用户信息,withCreden ...

  8. 微信小程序 - 获取用户信息的几种方式

    1. 老接口(上线使用-测试用button先获取用户信息) // 登录 wx.login({ success: res => { // 发送 res.code 到后台换取 openId, ses ...

  9. 微信小程序获取用户信息

    App({ appData: { userInfo:{ user_portraitUrl: "", user_nick: "", user_gender: 0, ...

随机推荐

  1. session和token区别

    分布式系统认证/授权目前分布式系统存在两种常用的认证授权方式:分布式session和token 1.session的概念 session中存放登录用户的个人信息,创建session时,随机生成一个se ...

  2. ant design for vue 解决 vue.esm.js?c5de:628 [Vue warn]: Invalid prop: custom validator check failed for prop "defaultValue". 的错误

    错误重现: 在使用ant design for vue 的选择器插件的时候, 设置默认为为id(为数字) 报错: 解决办法: id为数字, 而defaultValue 的key 值必须为字符串, 将i ...

  3. 2.docker machine 创建 包含 docker 的 linux 虚拟机

    1. 启动 从https://github.com/boot2docker/boot2docker/releases下载iso到~/.docker/machine/cache/里 docker-mac ...

  4. virtualbox Ubuntu拒绝root用户ssh远程登录

    http://www.bcty365.com/content-122-6241-1.html

  5. 吴裕雄--天生自然 pythonTensorFlow自然语言处理:PTB 语言模型

    import numpy as np import tensorflow as tf # 1.设置参数. TRAIN_DATA = "F:\TensorFlowGoogle\\201806- ...

  6. Mac环境下pyCharm的安装,激活及使用

    1.pyCharm的安装 安装地址: https://www.jetbrains.com/pycharm/download/#section=mac 2.激活 获取注册码地址: http://idea ...

  7. ipv6 mac地址转化为linklocal地址

    mac  3c:32:66:67:dd:46 linklocal地址 前六位固定  fe80:: 第七位  mac地址第一个byte进行如下计算 (byte) ((byte) (macbyte &am ...

  8. PAT甲级——1033 To Fill or Not to Fill

    1033 To Fill or Not to Fill With highways available, driving a car from Hangzhou to any other city i ...

  9. Servlet&JSP复习笔记 04

    1.状态管理 因为HTTP协议是无状态协议,但很多时候需要将客户端和服务端的多次请求当做一个来对待.将多次交互中设计的数据进行保存. 状态:数据 管理:对数据的维护 2.Cookie 客户端向服务器发 ...

  10. OA项目-表结构

    ###############  新建APP并配置   ############### INSTALLED_APPS = [ ... 'apps.users.apps.UsersConfig', 'a ...