Javascript NestJS-ID为的路由返回404
我是NestJS的新手,所以我显然做错了什么,但不知道是什么 问题: 我有一条ID和文本紧跟其后的路由(`/:ID/video`),每当我尝试对它发出HTTP请求时,都会得到404响应。 在同一个控制器中,我有一条路径,后面没有文本(Javascript NestJS-ID为的路由返回404,javascript,node.js,express,nestjs,Javascript,Node.js,Express,Nestjs,我是NestJS的新手,所以我显然做错了什么,但不知道是什么 问题: 我有一条ID和文本紧跟其后的路由(`/:ID/video`),每当我尝试对它发出HTTP请求时,都会得到404响应。 在同一个控制器中,我有一条路径,后面没有文本(/:id),这条路径运行得非常好 代码: 我的整个控制器看起来像下面的代码。由于其他端点工作正常,所以在模块等中正确使用了提醒控制器。 @Controller('channel') export class ChannelController extends Cru
/:id
),这条路径运行得非常好
代码:
我的整个控制器看起来像下面的代码。由于其他端点工作正常,所以在模块等中正确使用了提醒控制器。
@Controller('channel')
export class ChannelController extends CrudController<Channel> {
constructor(
private readonly channelService: ChannelService,
private readonly videoService: VideoService
) {
super(channelService);
}
@Get()
async findAll(@Query() params): Promise<Pagination<Channel>> {
return this.channelService.findAll({take: params.take, skip: params.skip, relations: ['language']});
}
@Get('/:id')
async findOne(@Param('id') id) {
return this.channelService.findOne({relations: ['language']});
}
@Get('/:id/video')
async findVideosByChannelId(@Param('id') id) {
return this.channelService.findOne({relations: ['language']});
}
}
欢迎大家提出我做错了什么的想法或提示。正如MorKadosh所说,删除斜杠是因为NestJS默认情况下会添加第一个斜杠。如果不删除它,则最终端点将如下所示:
http://localhost:3000/channel//:id
正如MorKadosh所说,删除斜杠是因为默认情况下NestJS会添加第一个斜杠,如果不删除它,则最终端点将如下所示:
http://localhost:3000/channel//:id
只需删除斜杠:
@Get('/:id/video')=>@Get(':id/video')
只需删除斜杠:@Get('/:id/video')=>@Get('/:id/video')