Laravel安装laravel-wechat实现微信授权登录

使用composer安装laravel-wechat

1
composer require "overtrue/laravel-wechat"

如果需要安装指定版本

  1. 安装不超过4.0的版本最新版本
1
composer require "overtrue/laravel-wechat:~4.0"
  1. 安装不超过4的版本最新版本
1
composer require "overtrue/laravel-wechat:^4.0"

建议laravel5.4安装4.0版本

创建配置文件

如果是Laravel5.4(含)以下版本,需要手动注册ServiceProvider 和 Facade

在config/app.php文件编辑

1
2
3
4
5
6
7
8
'providers' => [
// ...
Overtrue\LaravelWeChat\ServiceProvider::class,
],
'aliases' => [
// ...
'EasyWeChat' => Overtrue\LaravelWeChat\Facade::class,
],

创建配置文件

1
php artisan vendor:publish --provider="Overtrue\LaravelWeChat\ServiceProvider"

会生成config/wechat.php文件

在.env文件添加配置参数

1
2
3
4
WECHAT_OFFICIAL_ACCOUNT_APPID=
WECHAT_OFFICIAL_ACCOUNT_SECRET=
WECHAT_OFFICIAL_ACCOUNT_TOKEN=
WECHAT_OFFICIAL_ACCOUNT_AES_KEY=

WECHAT_OFFICIAL_ACCOUNT_APPID:微信公众号AppID
WECHAT_OFFICIAL_ACCOUNT_SECRET:微信公众号AppSecret
WECHAT_OFFICIAL_ACCOUNT_TOKEN:微信公众号Token
WECHAT_OFFICIAL_ACCOUNT_AES_KEY:微信公众号EncodingAESKey

定义路由

1
Route::any('wechat', 'WeChatController@serve');

一定是 Route::any, 因为微信服务端认证的时候是 GET, 接收用户消息时是 POST !

创建控制器

app/Http/Controllers/WeChatController.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
namespace App\Http\Controllers;

use Illuminate\Support\Facades\Log;

class WeChatController extends Controller
{

public function serve(){

Log::info('request arrived');

$app = app('wechat.official_account');
$app->server->push(function($message){
return "欢迎关注!";
});

return $app->server->serve();
}
}
坚持原创技术分享,您的支持将鼓励我继续创作!
0%