0
我想實現一個小cms只是爲了它的樂趣,我想爲用戶能夠從cms創建網站和頁面。從數據庫數據動態路由
例如,會有一些表單詢問用戶「站點」名稱,在該站點下用戶將能夠創建深度爲n級的站點樹,並將其保存在數據庫中。
ex:「blah/article」,「blah/blah/blah/article」。
我的問題是我將如何在expressjs中實現這樣的路由? 如何根據用戶創建的內容和每個站點動態地聲明我的路線?
如果例如我有2個網站:site1和site2。
本地主機:3000/site1的/ somepathhere /等等/等等
本地主機:3000 /站點2/someotherpathhere /等等/等等/等等
我想爲每個站點的路由是動態的(不知道是什麼用戶將創建),我希望每個站點路由只適用於該站點,而不是全局。
到目前爲止,我玩弄了一些代碼,但我不確定是否有一些更好的方法來實現這一點。
app.param('site', function(req, res, next, site) {
req.site = site;
next();
});
app.get('/:site', function(req, res) {
res.send(req.site + "<br><pre>" + JSON.stringify(req.params, null, 4) + "</pre>");
});
app.get('/:site/*', function(req, res) {
res.send(req.site + "<br><pre>" + JSON.stringify(req.params, null, 4) + "</pre>");
});