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();
相关推荐
CZDXWX9 分钟前
感知笔记4:YOLO 3D 物体定位
笔记·yolo
Wzc890204bai1 小时前
肥胖成因:饮食之外,消耗吸收慢是关键因素
经验分享·笔记·生活
L10732034821 小时前
深度学习笔记17_TensorFlow实现咖啡豆识别
笔记·深度学习·tensorflow
因为奋斗超太帅啦1 小时前
React学习笔记(三)——React 组件通讯
笔记·学习·react.js
卡戎-caryon1 小时前
【操作系统】01.冯·诺伊曼体系结构
服务器·笔记·操作系统·冯·诺伊曼体系结构
完球了2 小时前
【Day02-JS+Vue+Ajax】
javascript·vue.js·笔记·学习·ajax
开MINI的工科男3 小时前
【笔记】自动驾驶预测与决策规划_Part1_自动驾驶决策规划简介
人工智能·笔记·自动驾驶
RS&4 小时前
python学习笔记
笔记·python·学习
liuwill5 小时前
从技术打磨到产品验证:读《程序员修炼之道》的务实之道
笔记·程序人生
6230_6 小时前
git使用“保姆级”教程2——初始化及工作机制解释
开发语言·前端·笔记·git·html·学习方法·改行学it