Nestjs 笔记

一、模块添加版本

1、添加如下代码

2、访问方式

复制代码
 http://localhost:3000/v1/list

二、跨域处理

1、安装依赖

复制代码
npm install cors

npm install @types/cors -D

2、app.module.ts 添加代码

TypeScript 复制代码
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
import * as cors from 'cors'
 
const whiteList = ['/list']
 
async function bootstrap() {
  const app = await NestFactory.create(AppModule);
  app.use(cors())
  await app.listen(3000);
}
bootstrap();

三、中间件

中间件是在路由处理程序之前调用的函数,中间件函数可以访问请求和响应对象

中间件函数可以执行一下任务

  • 执行任何代码
  • 对请求和响应对象进行更改
  • 结束请求-响应周期
  • 调用堆栈中的下一个中间件函数
  • 如果当前的中间件函数没有结束请求-响应周期,它必须嗲用next()将控制传递给下一个中间件函数,否则请求将被挂起!

1、全局中间件

TypeScript 复制代码
import { VersioningType } from '@nestjs/common';
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
import * as session from 'express-session';

const whiteList = ['/list'];

function middleWareAll (req, res, next) {
    console.log(req.originalUrl, '全局中间件');
    if(whiteList.includes(req.originalUrl)){
        next();
    }else{
        res.send('无权限!');
    }
}

async function bootstrap() {
    const app = await NestFactory.create(AppModule);
    app.enableVersioning({
        type: VersioningType.URI
    })
    app.use(session({secret: "WangShan", name: "xm.session", rolling: true, cookie: { maxAge: null}}));
    app.use(middleWareAll);
    await app.listen(3000);
}
bootstrap();
相关推荐
民乐团扒谱机1 天前
【AI笔记】短时纯音时长对音高感知偏移效应研究综述
人工智能·笔记
暴躁小师兄数据学院1 天前
【AI大数据工程师特训笔记】第12讲:表分区与索引
大数据·笔记·sql·postgresql
暴躁小师兄数据学院1 天前
【AI大数据工程师特训笔记】第16讲:大数据环境安装
大数据·hadoop·笔记·flink·spark·database
Lin_Aries_04211 天前
最终成果报告:导航模型与无人机导航方向
笔记·具身智能·datawhale
pluviophile_s1 天前
数据结构:第2讲:线性表
数据结构·笔记
AOwhisky1 天前
MySQL 学习笔记(第一期):数据库基础与 MySQL 初探
运维·数据库·笔记·学习·mysql·云计算
RainCity1 天前
Java Swing 自定义组件库分享(十一)
java·笔记·后端
bbaydnog1 天前
FreeRTOS学习笔记 18:调试方法论——HardFault排查、栈溢出检测、运行时统计,RTOS调试三板斧
笔记·单片机·freertos
Lin_Aries_04211 天前
ETPNav 复现指南:从环境搭建到连续环境视觉语言导航全流程
笔记·具身智能·datawhale
一口吃俩胖子1 天前
【脉宽调制DCDC功率变换学习笔记023】渐进分析法
笔记·学习