我们可以在Laravel中将这样的路线分组:
Route::group("admin",["middleware" => ["isAdmin"]],function () { Route::get("/","AdminController@index"); Route::post("/post",["middleware" => "csrf","uses" => "AdminController@index"); });
基本上,admin组中定义的所有路由都会自动获取isAdmin中间件和组名.例如,post endpoint侦听admin / post not / post
有没有办法用Express做同样的事情?这将是非常棒的,因为我的Laravel路线曾经如此干净,而我的Express路线有点混乱/重复.
这是我目前在Express上的routes.js.
app.get("/admin",[passportConfig.isAuthenticated,passportConfig.isAdmin],AdminController.index); app.post("/admin",AdminController.postIndex);
谢谢.
解决方法
您可以使用app.use() –
https://expressjs.com/en/guide/using-middleware.html#middleware.application
app.use("/admin",AdminController) // AdminController: var express = require('express'); var router = express.Router(); router.get('/',AdminController.index); // etc... module.exports = router