Express-Ts-Auth-Service 项目教程

Express-Ts-Auth-Service 项目教程

express-ts-auth-service A ready-to-use authentication service build with express.js, that provides secure and reliable authentication using JSON Web Tokens (JWT) and refresh token rotation express-ts-auth-service 项目地址: https://gitcode.com/gh_mirrors/ex/express-ts-auth-service

1. 项目的目录结构及介绍

/src
├── config/          # 配置文件
├── controller/      # 路由控制器
├── middleware/      # 自定义中间件
├── routes/          # 路由
├── types/           # 类型定义
├── utils/           # 工具类和函数
├── validations/     # 验证模式
├── app.ts           # Express 应用
└── index.ts         # 应用入口点

目录结构介绍

  • config/: 存放项目的配置文件,如数据库连接配置、环境变量配置等。
  • controller/: 存放路由控制器,处理具体的业务逻辑。
  • middleware/: 存放自定义中间件,用于处理请求和响应。
  • routes/: 存放路由定义,定义API的入口点。
  • types/: 存放TypeScript的类型定义文件。
  • utils/: 存放工具类和函数,提供通用的功能支持。
  • validations/: 存放验证模式,用于验证用户输入。
  • app.ts: Express应用的入口文件,配置Express应用。
  • index.ts: 应用的启动文件,负责启动Express服务器。

2. 项目的启动文件介绍

index.ts

import app from './app';
import { PORT } from './config/env';

app.listen(PORT, () => {
  console.log(`Server is running on port ${PORT}`);
});

启动文件介绍

  • index.ts: 这是项目的启动文件,负责启动Express服务器。它导入app.ts中配置好的Express应用,并监听指定的端口(通过环境变量PORT指定)。启动成功后,会在控制台输出服务器运行的端口号。

3. 项目的配置文件介绍

config/env.ts

import dotenv from 'dotenv';

dotenv.config();

export const NODE_ENV = process.env.NODE_ENV || 'development';
export const PORT = process.env.PORT || 3000;
export const SERVER_URL = process.env.SERVER_URL || 'http://localhost:3000';
export const CORS_ORIGIN = process.env.CORS_ORIGIN || '*';
export const ACCESS_TOKEN_SECRET = process.env.ACCESS_TOKEN_SECRET || '';
export const REFRESH_TOKEN_SECRET = process.env.REFRESH_TOKEN_SECRET || '';
export const ACCESS_TOKEN_EXPIRE = process.env.ACCESS_TOKEN_EXPIRE || '15m';
export const REFRESH_TOKEN_EXPIRE = process.env.REFRESH_TOKEN_EXPIRE || '7d';
export const REFRESH_TOKEN_COOKIE_NAME = process.env.REFRESH_TOKEN_COOKIE_NAME || 'refresh_token';
export const DATABASE_URL = process.env.DATABASE_URL || '';
export const SMTP_HOST = process.env.SMTP_HOST || '';
export const SMTP_PORT = process.env.SMTP_PORT || '';
export const SMTP_USERNAME = process.env.SMTP_USERNAME || '';
export const SMTP_PASSWORD = process.env.SMTP_PASSWORD || '';
export const EMAIL_FROM = process.env.EMAIL_FROM || '';

配置文件介绍

  • env.ts: 这个文件负责加载环境变量,并导出项目中使用的配置项。它使用dotenv库来加载.env文件中的环境变量,并提供默认值。配置项包括应用的运行环境、端口号、服务器URL、CORS配置、JWT密钥、数据库连接URL、SMTP配置等。

通过这些配置文件,项目可以在不同的环境中灵活运行,并且可以根据需要进行自定义配置。

express-ts-auth-service A ready-to-use authentication service build with express.js, that provides secure and reliable authentication using JSON Web Tokens (JWT) and refresh token rotation express-ts-auth-service 项目地址: https://gitcode.com/gh_mirrors/ex/express-ts-auth-service

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孙嫣女

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值