用户名数组作为GET请求中的参数 - nodejs表示

时间:2018-02-11 05:59:38

标签: node.js express arraylist

我需要在GET请求中发送一组用户名作为参数,比如说

/show_user/?uname=user1&uname=user2&uname=user3&uname=user4

然后在express server.js文件中我可以将其检索为:

var username = req.query.uname;  //['user1', 'user2','user3','user4']

这会有用吗?

3 个答案:

答案 0 :(得分:1)

一种可能的解决方案是发送只有一个参数的GET请求

/show_user/?uname=user1;user2;user3

使用指定的运算符(如';'

)拆分字符串
var usernames = JSON.parse(req.params.uname).split(";")

第二种解决方案是发送带有application/json

的POST
{
   uname: ['user1','user2','user3'],
}

获得对象;也许你需要添加正文解析器中间件

var usernames = JSON.parse(req.body.uname);

答案 1 :(得分:1)

是。只需按照您的要求发送属性,然后在快递方面将其拉出来

var username = req.query.uname;  //['user1', 'user2','user3','user4']

答案 2 :(得分:0)

我的GET解决方案

两个用户的REST呼叫

/user/?names=Peter;Bob

快递代码:

const express = require('express');
const router = express.Router();

router.get('/user/', (req, res) => {
  const names = req.query.names.split(';');
  console.log(names);
  res.send({ text: 'Hello World' });
});

module.exports = router;

名称将存储在这样的数组中: [ 'Peter', 'Bob' ]