编程技术 Nest.js 开启静态 Web 服务和打造日志系统 如果服务器系统出现错误情况,查找原因依然靠着日志文件,所以这样就需要打造一个完整的日志系统。在输出文件之前先需要把系统记录器完善。目前自带无法满足基本的需求,需要新建一个属于自己日志系统。
编程技术 Nest.js 散列和加密 散列是给键值经过数学算法转换另外一个键值,在转换过程中是利用哈希函数生成,输出的内容无法还原,这边主要用于密码存储在数据需要进行散列处理。加密是对信息编码,将原始信息转换成密文,一般用于客户端向服务器发送密码等敏感信息,发送之前对此信息加密,然后在服务器再进行解密。
编程技术 Nest.js OpenApi 规范实现 OpenApi 规范是定义与 RESTful Api 的语言无关的标准接口,使用它不需要花大量的时间来编写接口文档。Nest 提供一个模块,使系统支持此规范。
编程技术 Nest.js 授权验证 系统授权指的是登录用户执行操作过程,比如管理员可以对系统进行用户操作、网站帖子管理操作,非管理员可以进行授权阅读帖子等操作,所以实现需要对系统的授权需要身份验证机制,下面来实现最基本的基于角色的访问控制系统。
编程技术 Nest.js 身份验证 身份验证是大部分系统重要部分,一个系统实现身份验证有很多方法,不过我在 Nest.js 中使用 Passport , 他是 Node.js 中最流行的身份验证库,实现起来很简单并且有很多策略模式。Nest.js 对 Passport 进行二次封装,使得使用起来更加简便
编程技术 Nest.js 环境变量配置和序列化 程序在不同的环境下需要不同的环境变量,例如生产环境、测试环境以及开发环境所需要不同的数据库信息:链接地址、链接端口号、登录用户名和密码相关信息。为了解决这个问题需要进行相关操作。
编程技术 Nest.js 中的数据库操作 为了与 SQL 和 NoSQL 数据库集成,Nest.js 提供了@nestjs/typeorm 软件包。Nest.js 使用 TypeORM,因为它是 TypeScript 最成熟的对象关系映射器(ORM)。由于它是用 TypeScript 编写的,因此可以与 Nest.js 框架很好地集成。