2016-07-28 7 views
0

/review- {title} - {id} のような動的なルートを作成しようとしていますが、エラーが発生した原因はわかりません。それを処理する。 私のクライアントの要件は上記のようなものですが、私はノードでうまくいかず、誰もが上記のようなルートを作る方法を提案してください。 また、このようなルートを/ review /:title /:id形式にする必要がある場合は、どうすればよいのでしょうか。ノードに動的パスを作成してjsを表現します

私がしようとしていますが、それは404ページに私をリダイレクトし、

server.js

this is working.. 
app.get('/review', (req, res) => { 
res.sendFile(path.resolve(__dirname, '../client/review.html')); 
}); 

but not this one.. 
app.get('/review-*-*', (req, res) => { 
res.sendFile(path.resolve(__dirname, '../client/review.html')); 
}); 

Also not this one working 
app.get('/review/*/*', (req, res) => { 
res.sendFile(path.resolve(__dirname, '../client/review.html')); 
}); 

This is 404 page which call evrytime while accessing dynamic pages 
app.get('/*', (req, res) => { 
res.sendFile(path.resolve(__dirname, '../client/404.html')); 
}); 
+0

あなたはこれに興味があるかもしれません:http://stackoverflow.com/questions/25623041/how-to-configure-dynamic- routes-with-express-js – DrakaSAN

答えて

2

Expressでルートの構文をチェックし、内部の私の既存のコードの詳細をご覧ください。あなたは、ルートのparamsを使用して方がいいでしょう、多くの場合

、例えば:

app.get('/review/:title/:id', (req, res) => { 
res.sendFile(path.resolve(__dirname, '../client/review.html')); 
}); 

いくつかのより多くの柔軟性(しかし、ほとんどの開発者にとってより不透明)は、正規表現に一致するだろう。

私は単語の真ん中に*を付けることができると思います(「/ abc * def」のような例がありますが、あなたがやっている他のものとどうやってうまくいくかわからないし、あなたがそれを行うならば、パターンに複数の*を持つことはできないと思ってください。)

関連する問題