使用@Request
/*
Get用到的是req.query,Post用到的是req.body
*/
@Get()
findAll(@Request() req) {
console.log(req.query);
return {
code: 200,
message: req.query.name,
};
// return this.userService.findAll();
}
@Post()
create(@Request() req) {
console.log(req);
return {
code: 201,
message: req.body.name,
};
}
使用@Request获取动态路由参数
@Get(':id')
findAll(@Request() req) {
return {
code: 200,
message: req.params,
};
}
也可以直接使用@Parmas这种语法糖
@Get(':id')
findOne(@Param('id') id: string) {
return {
code: 200,
message: id,
};
}
直接使用@Query
@Get()
findAll(@Query() query) {
console.log(query);
return {
code: 200,
message: query.name,
};
// return this.userService.findAll();
}
Post使用@Body直接读取post的请求体
@Post()
create(@Body() body) {
console.log(body);
return {
code: 201,
message: body,
};
}
返回的json
{
"code": 201,
"message": {
"name": "hello",
"age": 123
}
}
我们在@Body()里面填入参数,就能获取key的值了
@Post()
create(@Body('age') body) {
console.log(body);
return {
code: 201,
age: body,
};
}
像上面的,我们就能直接获取到发送请求得age得值
同样得,咱们在上面的@Query里面填上值也是可以得
@HttpCode()
@Get(':id')
@HttpCode(404) //返回404状态码
findAll(@Request() req) {
return {
code: 200,
message: req.params,
};
}