felipeiise/xogito-api

PHP任务用户API

v1.0.3 2022-11-19 08:44 UTC

This package is auto-updated.

Last update: 2024-09-28 01:48:29 UTC


README

说明

创建一个运行在PHP 7+上,使用PostgreSQL进行持久化并支持JSON请求负载的API。应用程序应具有用户账户,用户可以使用多因素认证(MFA)方法登录到系统。每个账户可以是管理员或普通用户。您可以使用您认为合适的任何库。对于这个练习,主要目标是分析您使用纯PHP编程语言的能力。所以,请避免使用框架,仅关注PHP语言。

用户需求

  • 可以完成注册步骤 ✅

  • 可以登录 ✅

  • 可以更新他们的名字 ✅

管理员需求

  • 可以完成用户能做的所有事情 ✅

  • 可以创建新的账户(用户和管理员) ✅

  • 可以停用账户 ✅

加分项

  • 支持使用composer安装API ✅

  • API的Postman请求集合 ✅

  • 文档 ✅

交付

项目应添加到任何Git托管平台的公共Git仓库中,并在截止日期前发送仓库的URL。项目应包括一个README.md文件,概述安装和运行项目的步骤。运行项目不需要外部依赖项!

安装

要安装此项目,您可以克隆Docker仓库(PHP 7.4 + NGINX + PostgreSQL)并使用composer安装API

git clone https://github.com/felipeiise/xogito-docker.git

移动到克隆的仓库

cd xogito-docker

启动Docker构建过程(这可能需要几分钟)

docker compose up -d --build

进入最近创建的PHP容器

docker exec -it php-srv bash

并使用composer安装API项目(注意在下面行尾的dot

composer create-project felipeiise/xogito-api .

将.env.example文件重命名为.env

mv .env.example .env

然后就这样,您可以直接在浏览器中导航到

https:///

有一个初始管理员

邮箱: first_admin@email.com

密码: 12345678

或者,您可以使用composer在不使用Docker的情况下安装API到您电脑上的某个文件夹

composer create-project felipeiise/xogito-api
cd xogito-api

将.env.example文件重命名为.env

mv .env.example .env

并且您需要将本地.env文件中的ENVIRONMENT变量替换为您的当前本地安装的PostgreSQL凭据

DB_HOST=localhost
DB_USER=postgres
DB_PASSWORD=docker
DB_DATABASE=postgres
DB_PORT=5432

在仓库根目录的sql文件夹中有2个.sql文件需要在数据库中执行

create_tables.sql
initial_data.sql

要在终端中启动API,输入

php -S https://:8080

并导航到

https://:8080

还有一个名为postman的文件夹,其中包含用于导入和测试API路由的集合和环境文件。

作者: @felipeiise