我一直在使用邮递员Chrome扩展来测试我的API,并想通过post发送一个id数组。有没有一种方法可以在Postman中将此作为参数发送?

{
  user_ids: ["1234", "5678"]
}

当前回答

你需要像这样用[]作为变量名的后缀:

如果这不起作用,试着不要把索引放在括号里:

my_array[]  value1
my_array[]  value2

注意:

如果你使用的是邮差打包应用,你可以通过选择raw / json(而不是form-data)来发送一个数组。另外,请确保在Headers选项卡中将Content-Type设置为application/json。 以下是原始数据{"user_ids":["123" "233"]}的示例,不要忘记引号! 如果您正在使用邮递员REST客户端,则必须使用我上面描述的方法,因为将数据作为raw (json)传递是行不通的。邮递员REST客户端有一个bug(至少我在使用0.8.4.6时得到了这个bug)。

其他回答

这也适用于对象中的列表:

Id:37
IdParent:26
Name:Poplet
Values[0].Id:1349
Values[0].Name:SomeName
Values[1].Id:1350
Values[1].Name:AnotherName

等价的JSON是:

{
    "Id": 37,
    "IdParent": 26,
    "Name": "Poplet",
    "Values": [
        {
            "Id": 1349,
            "Name": "SomeName"
        },
        {
            "Id": 1350,
            "Name": "AnotherName"
        }
    ]
}

这是对我有用的方法

{
 "user_ids":["[1234, 5678]"]
}

我认为这主要取决于后端是如何设置的。

我也遇到过这样的问题,并通过以下方法解决了它:

1 -进入请求头配置并添加以下内容:

Accept : application/json, text/plain, */*
Content-Type : application/json;charset=UTF-8

2 -为了发送json数组,我使用原始json格式,并将user_ids设置为array:

user_ids: ["bbbbbbbbbb","aaaaaaaaaa","987654321","123456789"]

在form-data中,你可以传递这样一个数组

在后台,你会像a一样取回它

"tags"=>["aaaa", "bbb"]

在我的例子中,我要在一个数组中传递两个值,所以我写了两次

将Body设置为raw,并形成如下数组: