node.js(nest.js控制器)学习笔记

nest.js控制器: 控制器负责处理传入请求并向客户端返回响应。
为了创建基本控制器,我们使用类和装饰器。装饰器将类与所需的元数据相关联,并使 Nest 能够创建路由映射(将请求绑定到相应的控制器)。
在这里插入图片描述

1.获取get请求传参,用@Request装饰器或者@Query()装饰器

import {Controller,Get,Request,
} from '@nestjs/common';import { WeiService } from './wei.service';@Controller({path: 'wei',version: '1', //版本控制
})
export class WeiController {constructor(private readonly weiService: WeiService) { }// @Request装饰器@Get()findAll(@Request() req) {console.log('@', req.query)return {code: 200,message: '请求成功W'}}
}
import {Controller,Get,Query,
} from '@nestjs/common';import { WeiService } from './wei.service';@Controller({path: 'wei',version: '1', //版本控制
})
export class WeiController {constructor(private readonly weiService: WeiService) { }// @Query()装饰器@Get()findAll(@Query() query) {console.log('@@', query)return {code: 200,message: '请求Q成功'}}
}

2.post请求获取参数,用@Request装饰器或者@Body 装饰器

import {Controller,Get,Query,
} from '@nestjs/common';import { WeiService } from './wei.service';@Controller({path: 'wei',version: '1',
})
export class WeiController {constructor(private readonly weiService: WeiService) { }//用@Request装饰器@Post()create(@Request() req) {console.log(req.body)return {code: 200,message: '请求成功!'}}
}
import {Controller,Get,Query,
} from '@nestjs/common';import { WeiService } from './wei.service';@Controller({path: 'wei',version: '1',
})
export class WeiController {constructor(private readonly weiService: WeiService) { }//用@Body装饰器@Post()create(@Body() body) {console.log(body)return {code: 200,message: '请求成功!'}}
}

读取请求体中得key值

import {Body,Controller,
} from '@nestjs/common';import { WeiService } from './wei.service';@Controller({path: 'wei',version: '1',
})
export class WeiController {constructor(private readonly weiService: WeiService) { }// 读取key@Post()create(@Body("title") body) {console.log(body)return {code: 200,message: '请求成功'}}
}

动态传参使用 Request装饰器 或者 Param 装饰器

import {Controller,Request,
} from '@nestjs/common';import { WeiService } from './wei.service';@Controller({path: 'wei',version: '1',
})
export class WeiController {constructor(private readonly weiService: WeiService) { }// 动态路由// Request装饰器 或者 Param 装饰器@Get(':id')findId(@Request() req) {console.log('@@@@@@', req.params)return {code: 200,message: '请求成功!!!!!!'}}
}

header信息读取使用@header装饰器

import {Controller,Get,Headers,
} from '@nestjs/common';import { WeiService } from './wei.service';@Controller({path: 'wei',version: '1',
})
export class WeiController {constructor(private readonly weiService: WeiService) { }// 读取header 信息@Get(':id')findId(@Headers() header) {console.log('header', header)return {code: 200,message: '请求成功!!!!!!'}}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/444106.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于 LLM+LlamaIndex+NebulaGraph,构建大模型知识图谱的检索(RAG)方法

最近,围绕着利用 LLM(Language Model)和知识图谱(KG,Knowledge Graphs)构建RAG(Retrieval Augmented Generation)流程引起了很多关注。 在本文中,让我们通过利用 LlamaI…

代理模式详解(重点解析JDK动态代理)

- 定义 在解析动态代理模式之前,先简单看下整个代理模式。代理模式分为普通代理、强制模式、动态代理模式。其中动态代理模式主要实现方式为Java JDK提供的JDK动态代理,第三方类库提供的,例如CGLIB动态代理。 代理模式就是为其他对象提供一种…

MySQL 汉字字段 拼音排序

原数据 排序后 SELECTc1 FROMtest ORDER BYCONVERT ( c1 USING gbk )

ubuntu20配置mysql8

首先更新软件包索引运行 sudo apt update命令。然后运行 sudo apt install mysql-server安装MySQL服务器。 安装完成后,MySQL服务将作为systemd服务自动启动。你可以运行 sudo systemctl status mysql命令验证MySQL服务器是否正在运行。 连接MySQL 当MySQL安装…

STM32G4 系列命名规则

STM32G4产品线 基础型系列STM32G4x1 具有入门级模拟外设配置,单存储区Flash,支持的Flash存储器容量范围从32到512KB。 增强型系列STM32G4x3 与基本型器件相比具有更多数量的模拟外设,以及双存储区Flash,Flash存储器容量也提高…

springCloud gateway 防止XSS漏洞

springCloud gateway 防止XSS漏洞 一.XSS(跨站脚本)漏洞详解1.XSS的原理和分类2.XSS漏洞的危害3.XSS的防御 二.Java开发中防范XSS跨站脚本攻击的思路三.相关代码(适用于spring cloud gateway)1.CacheBodyGlobalFilter.java2.XssRequestGlobalFilter.java…

【CSS】常见

一. 溢出隐藏 1.1 单行文本溢出 .content{max-width:200px; /* 定义容器最大宽度 */overflow:hidden; /* 隐藏溢出的内容 */text-overflow:ellipsis; /* 溢出部分...表示 */white-space: nowrap; /* 确保文本在一行内显示 */ }问题:display:flex 和 ellipsis 冲…

TensorFlow2实战-系列教程13:Resnet实战1

🧡💛💚TensorFlow2实战-系列教程 总目录 有任何问题欢迎在下面留言 本篇文章的代码运行界面均在Jupyter Notebook中进行 本篇文章配套的代码资源已经上传 Resnet实战1 Resnet实战2 Resnet实战3 1、残差连接 深度学习中出现了随着网络的堆叠…

React Router 完美教程(下)

我们书接上回,继续我们的React Router 路由之路: 我们到目前为止都没有用到 state、useEffect、redux等状态管理器。但也达到了我们的设计目的。 注意,action 返回的结果 可以在组件中使用 useActionData() 来获取。就像 useLoaderData() 的使…

天软因子数据库新成员——天软指数基金因子库

新闻资讯 News information UPDATE 天软指数基金因子库 天软始终致力于构建完善而丰富的因子库服务体系,陆续推出了股票因子、基金因子、多因子系列等众多因子数据及评价数据。 2024年天软将继续推进各品种因子的深入研究,开年之际天软推出指数基金因子库…

基于EdgeWorkers的边缘应用如何进行单元测试?

随着各行各业数字化转型的持续深入,越来越多企业开始选择将一些应用程序放在距离最终用户更近的边缘位置来运行,借此降低延迟,提高应用程序响应速度,打造更出色的用户体验。 相比传统集中部署和运行的方式,这种边缘应…

769933-15-5,Biotin aniline,可以合成多种有机化合物和聚合物

您好,欢迎来到新研之家 文章关键词:769933-15-5,Biotin aniline,生物素苯胺,生物素-苯胺 一、基本信息 产品简介:Biotin Aniline,一种具有重要生物学功能的化合物,不仅参与了维生…