2016-12-05 7 views
0

Node.jsとExpressを初めて使用しました。 RESTful APIプロジェクトで作業していましたが、URLに複数のパラメータを含むGETリクエストを送信しようとしています。複数のGETパラメータをExpressで使用する

ここ

は私のルートです:

/centers/:longitude/:latitude 

、ここでは、私はそれを呼び出すことを試みた方法です:

/centers?logitude=23.08&latitude=12.12 

と私も

を試してみました
/centers/23.08/12.12 

それはこのルートに行く終わる:

/centers/ 

だから、間違ったエンドポイントを書いている私の方法がありますか?または私がそれを要求している方法?

+0

どのように通話しているのか、どのように受信しているのかについてのコードを記入してください。 –

+0

複数のクエリパラメータを持つ[Node.js:Express app.get]の重複の可能性あり(http://stackoverflow.com/questions/19020012/node-js-express-app-get-with-multiple-query-parameters) – WitVault

答えて

3

のようなURLを試してみてください。この

var express = require('express'); 
var app = express(); 
var port = process.env.PORT || 8080; 
app.get('/centers/:log/:lat',function(req,res) 
     { 
res.json({ log: req.params.log, 
      lat: req.params.lat }); 

}); 
app.listen(port); 
console.log('Server started! At http://localhost:' + port); 

のようにしてみてください。このような

ルート定義:

/centers?longitude=23.08&latitude=12.12 

/centers/23.08/12.12 

あなたは、このようなURLを形成:

/centers/:longitude/:latitude 

は、このようなURLを期待していることを意味します

クエリパラメータを使用していますrs(param=value?の後にペア)。あなたが"/centers"のためのルートを作成することができ、そのためにHow to access the GET parameters after "?" in Express?

、その後、あなたはreq.query.longitudereq.query.latitudeは、これらの特定のクエリパラメータにアクセスするにアクセスします。それらにアクセスするには、この質問/回答はを参照してください。

関連する問題