Nest.js 中的处理程序路径
handler path in Nest.js
我有这个 PATCH
请求:http://localhost:3000/tasks/566-344334-3321/status
.
使用该请求的处理程序:
@Patch('/:id/status')
updateTaskStatus() { // do stuff
return "got through";
}
我不了解主干部分背后的机制以及如何分配正确的处理程序来处理请求。
所以从 /566-344334-3321/status
id部分是/566-344334-3321,可以是任意值。
但是词干结尾 /status
需要正好是 /status
.
如果不是,则会出现 "error": "Not Found"
。
此行为背后的基本逻辑是什么?
要获取 id
参数,您需要使用 @Param
装饰器将请求中的 :id
分配给打字稿编号。
这里是你应该如何根据 NestJS documentation about Route Parameters
编写你的 updateTaskStatus
函数
@Patch('/:id/status')
updateTaskStatus(@Param('id') id: number) {
return `Got ${id} through`;
}
如果您的问题是将 status
用作 id
之类的动态值,则需要对参数应用相同的装饰器
@Patch('/:id/:status')
updateTaskStatus(@Param('id') id: number, @Param('status') status: string) {
return `Got ${id} and ${status} through`;
}
NestJS 文档很好很完整,不要犹豫,阅读documentation about the controllers
我有这个 PATCH
请求:http://localhost:3000/tasks/566-344334-3321/status
.
使用该请求的处理程序:
@Patch('/:id/status')
updateTaskStatus() { // do stuff
return "got through";
}
我不了解主干部分背后的机制以及如何分配正确的处理程序来处理请求。
所以从 /566-344334-3321/status
id部分是/566-344334-3321,可以是任意值。
但是词干结尾 /status
需要正好是 /status
.
如果不是,则会出现 "error": "Not Found"
。
此行为背后的基本逻辑是什么?
要获取 id
参数,您需要使用 @Param
装饰器将请求中的 :id
分配给打字稿编号。
这里是你应该如何根据 NestJS documentation about Route Parameters
编写你的updateTaskStatus
函数
@Patch('/:id/status')
updateTaskStatus(@Param('id') id: number) {
return `Got ${id} through`;
}
如果您的问题是将 status
用作 id
之类的动态值,则需要对参数应用相同的装饰器
@Patch('/:id/:status')
updateTaskStatus(@Param('id') id: number, @Param('status') status: string) {
return `Got ${id} and ${status} through`;
}
NestJS 文档很好很完整,不要犹豫,阅读documentation about the controllers