0

なぜこれが起こっているのか正確にはわかりません。これを検索してみましたが、「ルートを起動していない複数の URL セグメント」のような言葉で表現する方法がわかりません。?

いずれにせよ、ここに行きます...

node.js と Express の使用: app.js に次のようなルートがあります。

app.get('/kosk/:id/:key', kosk.kosk);

次に ( http://my.nodeserv.com:8080/kosk/451/123456 ) にアクセスすると、サーバーから 404 not found が返されます。

しかし、私がこれを行うと:

app.get('/kosk/:id', kosk.kosk);

そして、ここに行きます(http://my.nodeserv.com:8080/kosk/451)-すべて正常に機能し、ルートがトリガーされ、パラメーターを取得します。

ルート内のコードは、入ってくるアイテムを処理するように設定されていますが、この形式のルートがトリガーされない理由がわかりません。繰り返しになりますが、ノードは、複数セグメントの URL に対して 404 not found で応答します。何か案は?シンプルなものを見逃してしまい、周りが見えないことを願っています。ヘルプ/アイデアをお寄せいただきありがとうございます。

4

1 に答える 1

0

あなたのスニペットによると、それはうまくいくはずです。以下が機能することを確認して、それが他のものではないことを確認することをお勧めします。

app.get('/foo/:bar/:baz', function(req, res) {
  res.json({
    bar: req.params.bar,
    baz: req.params.baz                                                                                      
  });
});

GETにリクエストを送信すると、次のようにhttp://localhost:3000/foo/123/456応答する必要があります。

{
  "bar": "123",
  "baz": "456"
}

新しい高速プロジェクトを作成し、正気のために上記のルートを定義することでこれを行いました。私にとってはうまくいったので、app.js/server.jsファイルの他の部分がこの問題を引き起こしている可能性があると思います。

于 2013-06-08T03:09:31.810 に答える