[英]Nest.Js Redirect from a controller to another
所以我有这个模块:
@Module({
imports: [],
controllers: [AppController, AnotherController],
providers: [],
})
在AppController
的某个路线上,我想做res.redirect('/books')
其中/books
是在AnotherController
找到的路线。
出于某种原因,这不起作用,我不知道它是否不受支持或我做错了。
从一个控制器重定向到另一个控制器使用res.redirect(target)
。 作为目标,您必须组合来自控制器的路径和路由注释:
@Controller('books')
+ @Get('greet')
= /books/greet
@Controller()
export class AppController {
@Get()
redirect(@Res() res) {
return res.redirect('/books/greet');
}
}
@Controller('books')
export class AnotherController {
@Get('greet')
greet() {
return 'hello';
}
}
在此处查看此运行示例:
另一种方法是使用 @Redirect() 装饰器,如此处所述: https ://docs.nestjs.com/controllers#redirection
这也应该有效:
@Controller()
export class AppController {
@Get()
@Redirect('books')
redirect(){}
}
@Controller('books')
export class AnotherController {
@Get()
getBooks() {
return 'books';
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.