当前位置: 首页 > news >正文

做宠物店网站的素材免费自建网站

做宠物店网站的素材,免费自建网站,近年网络营销成功案例,深圳网站建设方案服务公司在此之前我们用到的请求都是get请求#xff0c;接下来我们使用post 请求 并接收参数#xff0c;通过 Body 装饰器来取注意#xff1a;post请求带参数 我们通过游览器路径是直接请求不了的 需要使用postman 来发 post 请求postman 下载网站 https://www.postman.com/download…在此之前我们用到的请求都是get请求接下来我们使用post 请求 并接收参数通过 Body 装饰器来取注意post请求带参数 我们通过游览器路径是直接请求不了的 需要使用postman 来发 post 请求postman 下载网站 https://www.postman.com/downloads 首先 post 请求参数 我们需要通过一个dto class 来接收先创建一个 dto class 名称test.dto.ts export class TestDto {id: number;name: string;age: number; }增加post接口 Post(postTest)postTest(Body() obj: TestDto) {console.log(obj);return 调用成功}使用postman调用接口 传参数可以看到控制台接收了JSON数据我们再调用接口 age参数传11.23 也能调用成功 但是我在dto定义的时候 只定义了age 为number 但是传浮点数也能传这个可能会导致后面的逻辑错误所以就需要用到 ValidationPipe 我们需要2个包 npm install class-validator class-transformer修改postTest 接口 在body接收参数使用 ValidationPipe Post(postTest)postTest(Body(new ValidationPipe()) obj: TestDto) {console.log(obj);return 调用成功}接着我们在test.dto.ts进行修改 import { IsInt } from class-validator;export class TestDto {id: number;name: string;IsInt()age: number; }再次请求 可以发现报错了 我们使用的 IsInt() 是来自于 class-validator class-validator提供了基于装饰器声明的规则对对象做校验的功能class-transformer 是把一个普通对象转换为某个 class 的实例对象以上两者结合实现了 ValidationPipe 流程如下我们创建了一个dto类 ---- 接着在pipe拿到类 将参数通过class-transformer 转换为 dto 类的对象最后使用class-validator 包来对这个对象做验证 我们可以自己来实现ValidationPipe 类 nest g pipe my-validation --flat --no-specimport { ArgumentMetadata, BadRequestException, Injectable, PipeTransform } from nestjs/common; import { plainToInstance } from class-transformer; import { validate } from class-validator;Injectable() export class MyValidationPipe implements PipeTransformany {async transform(value: any, { metatype }: ArgumentMetadata) {if (!metatype) {return value;}const object plainToInstance(metatype, value);const errors await validate(object);if (errors.length 0) {throw new BadRequestException(参数验证失败);}return value;} }metatype 拿到的就是下面 TestDto 如果没有声明Dto则无法进行转换和验证如果有metatype则进行下一步通过 class-transformer 的 plainToInstance 把普通对象转换为 dto class 的实例对象最后进行验证 调用 class-validator 包的 validate api 我们来使用看一下效果 Post(postTest)postTest(Body(new MyValidationPipe()) obj: TestDto) {console.log(obj);return 调用成功}再次调用可以发现检测出了错误 当然以上只是个例子 并不完善 所以使用的时候还是所以内置的 ValidationPipe
http://www.hkea.cn/news/14455260/

相关文章:

  • 怎么建设淘宝网站查网站服务器所在地
  • 深圳网站设计+建设首选深圳市企业网站设计一般多少钱
  • 洛阳网站seo建公司网站的详细步骤
  • html5购物网站模板蚌埠网站建设专业的公司4000-262-
  • 做音乐网站多少钱wordpress 置顶 函数
  • 哈尔滨建设网站公司哪家好论坛网站设计
  • 南京一对一网站建设电商网站用什么做最好
  • 廊坊中小企业网站制作网站专业优化
  • 做高铁在哪个网站买wordpress内容页自定义字段
  • 怎么做自己的网站推广产品品牌建设实施方案
  • 网站国际化怎么做空间免费浏览量100
  • 建设银行哪个是假网站代写文章价格表
  • 化妆网站源码做网站怎么套用模板
  • 口碑好的网站开发公司个人网站免费申请注册
  • 专业网站开发多少钱图片类网站开发需求
  • 源码网站跟自己做的网站区别个人网站实例
  • 网站建设费大概多少钱宁波seo服务快速推广
  • 宁波做公司网站的公司天元建设集团有限公司单位性质
  • 系网站建设总结报告今天重大新闻国际新闻
  • 水果网站推广wordpress 支持 手机
  • 成都网站设计公司官网212200扬中论坛
  • 网站设计上海内部网络网站怎么做
  • 怎么做自己的优惠淘网站swoole怎么做直播网站
  • 制作网站用c#做前台html制作学校网页
  • 现在个人都在哪个网站做外贸做微网站公司名称
  • 织梦网站发稿说明深圳网站建设公司哪好
  • 微信公众号端网站开发海口网站建设价格
  • 吉林电商网站建设怎样建立一个营销网站
  • 苏州运营推广网站建设如何查看网站备案信息
  • 专业app网站建设哪家好seo 知乎