2016-06-17 9 views
0

ルート:はいこの2つのルートはnodejsで同じですか? Expressの

/search/company/:company-name 
/search/category/:category-name 
+0

node.js/expressはどのように企業名をルーティングレベルのカテゴリ名と区別するのでしょうか? – DrakaSAN

+0

@DrakaSANそれは私の質問です。 – pregmatch

+0

長いバージョンのために私を殴られてスピードを落としましたが、私の最初のコメントはリオリスなものでした。あなたはそれが何であるかを知ったら、会社とカテゴリーを分けることができますが、あなたのためにそれをすることはできません。 – DrakaSAN

答えて

3

/search/:company-name 
/search/:category-name 

は、私は彼らが同じであるので、最初のものは、両方の要求のために解雇されていますが、そこには、例えば関与せずにこれを解決する方法であることがわかります、彼らは同じです。

ルータには、search/で始まり、ワイルドカードで終わるルートが表示されます。変更する唯一のものは、ワイルドカードに付けた名前です。これはルータに関係なく、同じURLです。

これを解決するには、ルートを変更するか、ルート引数(ワイルドカード)を解析してその値に応じて異なる処理を実行します。

+0

はい、それも私が考えていたものです。ありがとう。 – pregmatch

4

パラメータの代わりにクエリを使用できます。 あなたのURLは次のようになります。

/search?company=company-name 
/search?category=category-name 

あなたのルートは/searchであり、あなたの代わりにreq.paramsのreq.queryを使用しています。

それはどちらかだと、

  • や経路を変更するソリューション、
  • または何らかの形でそれが会社やカテゴリ
  • またはポストへのあなたのルートを変更するのかどうかを判断するためのパラメータを解析し、投稿本体でキーと値のペアを使用する
関連する問題