项目简介
本项目是基于Koa框架搭建的API系统,拥有用户注册、登录等基础功能,同时支持商品模块的文件上传操作。综合运用数据库操作、密码加密、错误处理、Token认证等技术,构建了安全完整的后端服务体系。
项目的主要特性和功能
- 自动重启服务:借助nodemon工具,修改代码后服务自动重启,提升开发效率。
- 配置文件管理:使用dotenv读取.env文件,将配置写入环境变量,便于管理不同环境的配置。
- 路由管理:采用@koa/router配置路由,拆分路由与控制器,增强代码可维护性。
- 数据库操作:运用sequelize ORM工具操作MySQL数据库,实现数据表与类的映射,方便数据增删改查。
- 错误处理:统一管理错误类型,通过中间件验证和处理错误,提高系统健壮性。
- 密码加密:使用bcryptjs对用户密码加盐加密,保障用户信息安全。
- Token认证:登录成功颁发Token,后续请求携带Token进行身份验证。
- 文件上传:利用koa-body实现文件上传,文件存储在指定目录,可通过静态资源服务访问。
安装使用步骤
安装依赖
确保已下载项目源码文件,在项目根目录下打开终端,执行以下命令安装依赖:
bash
npm install
配置环境变量
在项目根目录下创建.env文件,并配置相关环境变量,示例如下:
APP_PORT=8000
MYSQL_HOST=localhost
MYSQL_PORT=3306
MYSQL_USER=root
MYSQL_PWD=password
MYSQL_DB=your_database_name
JWT_SECEET=your_secret_key
启动服务
在项目根目录下执行以下命令启动服务:
bash
npm run dev
接口使用
- 用户注册:发送POST请求到
/users/register
,请求体包含user_name
和password
。 - 用户登录:发送POST请求到
/users/login
,请求体包含user_name
和password
,登录成功返回Token。 - 文件上传:发送POST请求到相应的商品模块接口,设置
multipart
为true
,并在请求中携带文件。上传的文件存储在src/upload
目录,可通过静态资源服务访问。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】