orchestra/lumen

Lumen 框架用于 Orchestra 平台

v5.0.3 2020-05-03 17:46 UTC

README

此存储库包含 Orchestra Lumen 的核心代码。如果您想使用 Orchestra 平台构建应用程序,请访问主存储库

Build Status Latest Stable Version Total Downloads Latest Unstable Version License

安装

首先,安装 Lumenate 安装程序,并确保全局 Composer bin 目录位于您的系统 $PATH 中。

composer global require "orchestra/lumenate=^1.0"

在 Orchestra 平台项目内部运行以下命令

lumenate install

安装 Lumen 后,您还可以选择在 lumen 文件夹下添加基础 Lumen 应用程序框架,可以通过运行以下命令来完成:

lumenate make

您还可以选择添加新的路径到自动加载以检测 lumen/app,使用 PSR-4 或使用单个 app 目录。

{
    "autoload": {
        "psr-4": {
            "App\\": "app/",
        }
    },
    "autoload-dev": {
        "classmap": [
            "tests/LumenTestCase.php",
            "tests/TestCase.php"
        ]
    },

    "prefer-stable": true,
    "minimum-stability": "dev"
}

建议您将 "prefer-stable": true"minimum-stability": "dev" 设置为 true,因为 laravie/apitymon/jwt-auth 在最新的 Lumen 中还没有稳定版本。

API 路由

Dingo API 已经与 Lumen 预装。要开始使用它,您只需取消以下 lumen/bootstrap.php 中的注释即可:

require base_path('lumen/routes/api.php');

JWT 身份验证

通过命令行安装 tymon/jwt-auth

composer require "tymon/jwt-auth=^1.0"

接下来,从 lumen/bootstrap.php 中启用以下服务提供者:

$app->register(Tymon\JWTAuth\Providers\LumenServiceProvider::class);

// ...

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

接下来,我们需要为 JWT 创建一个密钥

php lumen/artisan jwt:secret

这将向您的主 .env 文件中添加 JWT_SECRET 值。

最后,您可以扩展默认的 App\User 模型以支持 Tymon\JWTAuth\Contracts\JWTSubject

<?php 

namespace App;

use App\Lumen\User as Eloquent;

class User extends Eloquent
{
    //
}