2017 © Pedro Peláez
 

library wxtool

微信小程序登录、带参小程序码生成

image

icharle/wxtool

微信小程序登录、带参小程序码生成

  • Wednesday, June 27, 2018
  • by icharle
  • Repository
  • 0 Watchers
  • 3 Stars
  • 13 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 2 Versions
  • 0 % Grown

The README.md

Laravel 微信小程序扩展包

本扩展包包含用户详细信息解密、带参数小程序码生成并保存在本地目录功能。 用户详细信息解密官方也提供多种语言版本SDK(C++、PHP、Node、Python),在本扩展包中仅仅做封装处理。 带参数小程序码生成,官方给出三种接口,在此扩展包中采用 接口B (适用于需要的码数量极多的业务场景,通过该接口生成的小程序码,永久有效,数量暂无限制)。, (*1)

使用方法

运行以下命令以获取最新版本:, (*2)

composer require icharle/wxtool 1.0

将服务提供者添加到配置文件中的providers数组中config/app.php,如下所示:, (*3)

'providers' => [

    ...

    Icharle\Wxtool\WxtoolServiceProvider::class,
]

发布配置文件, (*4)

php artisan vendor:publish --tag=wxtool

此时有一个config/wxtool.php文件。, (*5)

配置AppID及AppSecret, (*6)

在根目录.env文件中添加如下代码, (*7)

WX_APPID = 您的小程序小程序ID
WX_SECRET = 您的小程序密钥

公开storage访问文件(可选), (*8)

若要使用 带参数小程序码生成 功能时必须执行下面命令。生成的小程序码默认保存在storage/app/public/qrcode文件夹中, (*9)

php artisan storage:link

快速入门

  • 获取带参数小程序码(示例代码), (*10)

    <?php
    
    namespace App\Http\Controllers;
    
    use Icharle\Wxtool\Wxtool;
    use Illuminate\Http\Request;
    
    class TestController extends Controller
    {    
    
        /**
         * 获取带参数小程序码
         * @param $scene 场景值(最大32个可见字符,只支持数字,大小写英文以及部分特殊字符)
         * @param $pages 页面(必须是已经发布的小程序存在的页面(否则报错)
         * @return $imgpath 小程序码路径 (可以直接访问 http://xxx.com/$imgpath)
         */
        public function GetImgCode()
        {
            $a = new Wxtool();
            $imgpath = $a->GetQrcode($scene,$pages); 
        }
    }
    
  • 获取用户详细信息(示例代码), (*11)

    <?php
    
    namespace App\Http\Controllers;
    
    use Icharle\Wxtool\Wxtool;
    use Illuminate\Http\Request;
    
    class TestController extends Controller
    {    
    
        /**
         * 获取用户详细信息
         * @param Request $request
         */
        public function GetInfo(Request $request)
        {
            $a = new Wxtool();
            $code = $request->code;                                     //wx.login获取
            $encryptedData = $request->encryptedData;                   //wx.getUserInfo 获取
            $iv = $request->iv;                                         //wx.getUserInfo 获取
            $res = $a->GetSessionKey($code);                            //获取用户openid 和 session_key
            $userinfo = $a->GetUserInfo($encryptedData,$iv);            //获取用户详细信息
        }
    }
    

    解密返回结果, (*12)

    {
        "openId": "OPENID",
        "nickName": "NICKNAME",
        "gender": GENDER,
        "city": "CITY",
        "province": "PROVINCE",
        "country": "COUNTRY",
        "avatarUrl": "AVATARURL",
        "unionId": "UNIONID",
        "watermark":
        {
            "appid":"APPID",
            "timestamp":TIMESTAMP
        }
    }
    

The Versions

27/06 2018

dev-master

9999999-dev

微信小程序登录、带参小程序码生成

  Sources   Download

MIT

by Avatar icharle

27/06 2018

1.0

1.0.0.0

微信小程序登录、带参小程序码生成

  Sources   Download

MIT

by Avatar icharle