小米商场案例 : nestjs

nest脚手架安装 : nest new 项目名

 

创建控制器 : nest g controller 名称  , 控制器创建好了,nest会自动给我们配置路由

路由的get 和 post 方法

import { Body, Controller, Get, Param, Post, Query, Request } from '@nestjs/common';

// nest g controller artice
// 这个是请求地址的后缀名
@Controller('artice')
export class ArticeController {

    // 配置路由 http:127.0.0.1:3000/artice
    @Get()
    index(){
        return '我是一个文章页面'
    }

    
    // get 获取传参 方式一 
    @Get('add')  // 配置路由 http:127.0.0.1:3000/artice/add

    // 通过 @Query() 装饰器 获取get传值 (地址栏传递过来的参数)
    // http://127.0.0.1:3000/artice/add?id=123&name=杨建鑫
    addindex(@Query() query){
        console.log(query);
        // { id: '123', name: '杨建鑫' }
        return query
    }

    // get 获取传参 方式二  [采用这种]
    @Get('req') // 配置路由 http:127.0.0.1:3000/artice/req

    // 通过 @Request( 装饰器 获取get传值 (地址栏传递过来的参数)
    // http://127.0.0.1:3000/artice/req?id=123&name=杨建鑫
    reqindex(@Request() req){
        console.log(req.query);
        let a = JSON.stringify(req.query)
        return `通过@Request获取get传值 ${a}`
    }

    // post
    @Post('create') // 配置路由 http:127.0.0.1:3000/artice/create
    PostData(@Body() body){
        console.log(body);
        return 'post传递成功'
    }

    // 获取动态路由
    @Get(":id")   // 配置路由 http:127.0.0.1:3000/artice/2
    getId(@Param() param){
        console.log(param);  //{ id: '2' }
        return '动态路由'
    }
}

 

posted @ 2022-10-17 11:30  杨建鑫  阅读(178)  评论(0编辑  收藏  举报