Использовать параметры запроса, определенные в URL, для фильтрации ресурса из RESTful API с помощью узла / экспресса? - PullRequest
0 голосов
/ 01 ноября 2018

Как я могу сделать этот тип вещей на узле / экспресс

app.get("/users/:id/state/:state", (req, res) => {
      if (req.params.state== 'Published') {
            //do somehting
      } else {
            //do something
      }
});

но фильтрация по состоянию? Например, я хочу иметь этот тип маршрута /users/123/posts?state=published, как мне это сделать на узле?

1 Ответ

0 голосов
/ 03 ноября 2018

В экспрессе строки запроса URL не нужно указывать в маршруте. Вместо этого вы получаете к ним доступ, используя req.query:

app.get("/users/:id/posts", (req, res) => {
    if (req.query.state  == 'published') {
      console.log("published");
    } else {
      console.log("not published");
    }
});

Это обработает URL: /users/123/posts?state=published

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