Как получить переменную ввода в URL после знака вопроса (Javascript) - PullRequest
0 голосов
/ 19 января 2020

Я создаю API отдыха, используя node js. Когда я выполняю get, я хочу иметь возможность получить некоторые параметры через URL:

  app.get("/energy/api/ActualTotalLoad/:AreaName/:Resolution/date/:Year-:Month-:Day?format=:Type", entry.findTwo);

Но когда я делаю следующее: if(req.query.format!==undefined && req.query.format=="csv")

Он не получает ввод. Я нашел подобные вопросы здесь, где ввод не является переменным, но здесь формат может быть либо json, либо CSV, и я не хочу писать два разных app.get (один для CSV и один для json).

Можно ли это сделать?

1 Ответ

1 голос
/ 19 января 2020

Вам не нужно составлять маршрут с параметрами запроса. По умолчанию он будет req.query.

, поэтому в вашем случае:

const app = require('express')();
app.get("/energy/api/ActualTotalLoad/:AreaName/:Resolution/date/:Year-:Month-:Day", (req, res)=>{
  console.dir(req.query.format);
  res.send();
});

app.listen(8080);

Затем откройте http://localhost:8080/energy/api/ActualTotalLoad/aaa/aaa/date/aaa-aaaa-aaaa?format=csv

Выход будет:

'csv'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...