neoan.io / rest-api-starter-project
基本的 neoan.io Lenkrad 初始化包,带有身份验证
Requires
- neoan.io/core: ^0
- neoan.io/legacy-db-adapter: 1.*
- neoan3-apps/stateless: ^2.0
This package is auto-updated.
Last update: 2024-09-04 23:17:44 UTC
README
这是一个非常轻量级的项目设置,旨在让您快速启动 REST-api。
要求
- php8.1
- composer ^2
- SQLite
安装
composer create-project neoan.io/rest-api-starter-project my-app
cd my-app
composer update
php install
运行: php dev
然后,访问 http://127.0.0.1:8080
基本教程
该项目附带一个基本教程,帮助您开始。为了更深入的理解,请访问 lenkrad 文档: neoan.io lenkrad
身份验证
安装后,您可以通过 POST /api/auth/register (src/Auth/Api/Register.php) 注册一个用户,请提供包含电子邮件和密码的有效载荷
curl -X POST -H "Content-Type: application/json" -d '{"email": "my@mail.com", "password": "123456"}' http://127.0.0.1:8080/api/auth/register
经过身份验证的调用将需要提供的 JWT-token
登录端点是 /api/auth/authenticate
(src/Auth/Api/Authenticate.php),而端点 /api/auth/me
(src/Auth/Api/Me.php) 返回当前用户。
限制路由
可以在各自的属性中在路由之前链接中间件(请参阅 src/Auth/Api/ME.php 以获取说明)
理解功能
src/Example 文件夹应该为您提供一个很好的起点,以便直观地理解 LENKRAD 核心在这个初始化包中的使用。请注意,您在结构方面完全自由。您在这个初始化包中找到的只是一个示例。
安全 / 在您部署之前
您的清单
- .env 文件更新
- 是否需要 src/Example 文件夹?
- 是否只有 /public 文件夹公开暴露在网络上?
从 SQLite 更改为 MySQL 或 MariaDB
首先,将以下信息添加到您的 .env 文件中
- DB_HOST
- DB_NAME
- DB_USER
- DB_PASSWORD
- DB_CHARSET
- DB_PORT
确保所选数据库已创建。然后,将 config/Database.php 的构造函数更改为使用 useMySql
方法而不是 useSQLite
。
迁移时,使用 mysql
代替 sqlite
保留字
php cli migrate:models mysql