lumen登陆 注册 API实例

本文详细介绍了如何使用Lumen框架构建用户登录、注册和获取用户信息的API。涉及环境搭建、数据库配置、认证服务、路由定义、Controller逻辑、认证中间件和测试。用户注册时使用SHA1加密密码,登录成功后会更新数据库中的Token。
摘要由CSDN通过智能技术生成

一、准备工作

1、Lumen环境搭建

可参考上篇文章《Lumen安装配置使用入门》一文。

 

2、数据库信息

数据库地址:localhost

数据库名称:lumenauth

数据库用户:root

数据库密码:******

 

二、初始化Lumen

lumen new LumenAuth

三、配置

1、数据库配置

在命令行进入项目所在文件夹,执行命令:

copy .env.example .env

用文本编辑器打开.env文件,根据之前准备的数据库信息作相应修改。

---------------------------------------
 LumenAuth\.env
 ---------------------------------------
 APP_ENV=local
 APP_DEBUG=true
 APP_KEY=
 DB_CONNECTION=mysql
 DB_HOST=localhost
 DB_PORT=3306
 DB_DATABASE=lumenauth
 DB_USERNAME=root
 DB_PASSWORD=
 CACHE_DRIVER=memcached
 QUEUE_DRIVER=sync
 ---------------------------------------

2、认证及修改生效配置

打开项目文件夹LumenAuth\bootstrap\app.php文件,我们将在这里作几处修改。

(1)配置修改生效设置

首先,把以下两行代码取消注释,让数据库信息和认证服务修改可以生效。

 $app->withFacades();
 $app->withEloquent();

(2)认证中间件注册

参照LumenAuth\bootstrap\app.php文件中”Register Middleware” 部分的中间件注册代码,在它下面注册一个认证路由中间件,这个路由中间件需要我们后面在LumenAuth\app\Http\Middleware文件夹中自定义,我们这里先做配置,后面进行代码实现。注册中间件使用以下代码:

 $app->routeMiddleware([
   'authToken' => App\Http\Middleware\AuthToken::class,
 ]);

(3)开启注册服务提供者

认证中间件的生效还需要注册服务提供者支持,在LumenAuth\bootstrap\app.php文件下面把以下两行代码的注释去掉即可开启注册服务提供者:

 $app->register(App\Providers\AppServiceProvider::class);
 $app->register(App\Providers\AuthServiceProvider::class);

最后,LumenAuth\bootstrap\app.php文件有效代码如下:

 ---------------------------------------
 LumenAuth\bootstrap\app.php
 ---------------------------------------
 <?php
   require_once __DIR__.'/../vendor/autoload.php';
   try {
     (new Dotenv\Dotenv(__DIR__.'/../'))->load();
     } catch (Dotenv\Exception\InvalidPathException $e) {
       //
     }
   $app = new Laravel\Lumen\Application(
     realpath(__DIR__.'/../')
   );

   $app->withFacades();
   $app->withEloquent();

   $ap
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值