PHPackages                             jmluang/weapp - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. jmluang/weapp

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

jmluang/weapp
=============

weapp login package

v4.1(3y ago)293477MITPHP

Since Mar 23Pushed 3y ago4 watchersCompare

[ Source](https://github.com/jmluang/weappLogin-for-laravel)[ Packagist](https://packagist.org/packages/jmluang/weapp)[ RSS](/packages/jmluang-weapp/feed)WikiDiscussions master Synced 2w ago

READMEChangelog (7)DependenciesVersions (8)Used By (0)

laravel-weapp
=============

[](#laravel-weapp)

A weapp login logic Laravel warpper

本仓库从 [wafer2开发套件](https://github.com/tencentyun/wafer2-quickstart-php) 中提取并封装了微信小程序的登陆逻辑并转移到Laravel中，不仅降低开发者的学习成本，而且能快速完成小程序的登陆功能 ***甚至连数据库都不需要担心，因为插件已经包装好数据库的操作了***。您只需要导入相关的[表](https://github.com/jmluang/laravel-weapp/blob/master/src/database/cSessionInfo.sql)到数据库中即可。 若需要使用自己的数据库和用户的逻辑操作，只需要继承相应的接口和提供 Facade 类就可以了。详情可以查看[使用自己的数据库和逻辑](#%E4%BD%BF%E7%94%A8%E8%87%AA%E5%B7%B1%E7%9A%84%E6%95%B0%E6%8D%AE%E5%BA%93%E5%92%8C%E9%80%BB%E8%BE%91)

特点
==

[](#特点)

- 使用了 Guzzlehttp 来发送请求
- 使用了 Laravel 的 Eloquent ORM 封装了数据库操作，只需要导入表到数据库中即可。当然了，您也可以使用您自己的逻辑

注意
==

[](#注意)

- 请配合开发者工具和js-sdk使用

安装
==

[](#安装)

只需要五步即可完成安装部署。

1. 通过 composer 安装: `composer require jmluang/weapp:2.*`
2. 添加 Provider 到`config/app.php`中

```
 'providers' =>[
     // Laravel Framework Service Providers
     // ...
	 jmluang\\weapp\\WeappLoginServiceProvider::class,
 ]
```

3. 发布配置文件

```
php artisan vendor:publish --provider="jmluang\weapp\WeappLoginServiceProvider"
```

参数如下：

参数值说明appid你的 AppID必须secret你的 AppSecret必须code2session\_url默认url不用改变WxLoginExpires7200（秒）选填，填写前先取消备注NetworkTimeout3000（毫秒）选填，填写前先取消备注配置参数有两种方法，一种是直接写到`weapp.php`文件中，另一种是写到`.env`文件中，使用哪种方法都可以。但是有一点需要注意，若你的项目会发布到开源社区，则不推荐使用第一种方法，因为这样做存在泄露信息的风险。

`WxLoginExpires` 和 `NetworkTimeout` 都使用了默认的参数，如果你有特殊的需求需要改这两个参数，只要取消备注并填写即可。

4. 添加数据库 Facade 到`config/app.php`中

```
'aliases' => [
    // Laravel Framework Facades
    // ...
	'WeappUserRepository' => jmluang\weapp\Facades\WeappUserRepository::class,
	'WeappUser' => jmluang\weapp\Facades\WeappUser::class,
]
```

若重写了数据库逻辑，则这里应该使用你自己的 Facade 类：

```
'aliases' => [
    // Laravel Framework Facades
    // ...
	'WeappUserRepository' => your\namespace\FacadeClass::class,
	'WeappUser' => your\namespace\ModelClass::class,
```

5. 迁移数据库

```
php artisan migrate
```

若重写了数据库逻辑，则可以忽略这一步

使用方法
====

[](#使用方法)

1. Laravel 配置 安装完成后，下面创建一个控制器和路由规则 路由文件：

```
// filepath routes/web.php
