[英]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.