316

我一直在使用 Postman Chrome 扩展来测试我的 API,并希望通过 post 发送一组 ID。有没有办法在 Postman 中发送一些列表作为参数?

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

20 回答 20

557

您需要[]像这样为变量名称添加后缀:

send_array_param_with_postman

如果这不起作用,请尽量不要将索引放在括号中:

my_array[]  value1
my_array[]  value2

笔记:

  • 如果您使用的是邮递员打包的应用程序raw,则可以通过选择/ json(而不是)来发送数组form-data。另外,请确保设置Content-Type为选项卡application/jsonHeaders这是原始数据的示例{"user_ids": ["123" "233"]},不要忘记引号!

  • 如果您使用的是邮递员 REST 客户端,则必须使用我上面描述的方法,因为将数据作为原始 (json) 传递将不起作用。邮递员 REST 客户端中有一个错误(至少我在使用时得到了这个错误0.8.4.6)。

于 2014-05-19T10:09:11.923 回答
87

对我来说,没有使用 array[0], array 1 , .. or array[], array[], ... 。它的工作原理更简单: 在此处输入图像描述

于 2014-09-17T21:03:38.873 回答
52

这是我的解决方案:

使用表单数据并编辑如下:

Key       Value 
box[]      a
box[n1]    b
box[n2][]  c
box[n2][]  d

你会得到一个这样的数组:

{"box":{"0":"a","n1":"b","n2":["c","d"]}}
于 2015-04-03T03:09:50.433 回答
50

如果你想要一个字典数组,试试这个: 在此处输入图像描述

于 2018-09-17T11:04:44.057 回答
35

我也有这个问题,并通过执行以下操作解决了它:

1 - 转到请求标头配置并添加以下内容:

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

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

user_ids: ["bbbbbbbbbb","aaaaaaaaaa","987654321","123456789"]
于 2014-11-20T15:29:22.563 回答
30

重要的是要知道,VALUE 框只允许包含一个数字值(没有说明符)。

如果你想用 Postman 发送一个“消息”数组,每个都有一个键/值对列表,在 KEY 框中输入 messages[][reason] ,在 VALUE 框中输入 reason 的值:

在此处输入图像描述

服务器将收到:

{"messages"=>[{"reason"=>"scrolled", "tabid"=>"2"}, {"reason"=>"reload", "tabid"=>"1"}], "endpoint"=>{}}
于 2018-09-05T06:47:43.350 回答
23

将 Body 设置为 raw 并按如下方式形成数组:

在此处输入图像描述

于 2017-12-04T22:54:16.973 回答
20

正如@pinouchon 提到的,您可以在数组索引的帮助下传递它

my_array[0] value
my_array[1] value

In addition to this, to pass list of hashes, you can follow something like:

my_array[0][key1] value1

my_array[0][key2] value2

例子:

To pass param1=[{name:test_name, value:test_value}, {...}]

param1[0][name] test_name

param1[0][value] test_value
于 2016-07-04T15:46:36.950 回答
16

转到 Header 并选择Content-Type=application/json然后转到 body 并选择raw然后传递一个数组。在此处输入图像描述

于 2018-12-10T15:43:51.163 回答
15

这对我有用。传递 Item 对象数组 {ItemID,ColorID,SizeID,Quntity}

邮递员数据

于 2017-06-30T14:33:31.447 回答
8

在标题集中

content-type : application/x-www-form-urlencoded

在正文中选择选项

x-www-form-urlencoded

并将数据插入为 json 数组

user_ids : ["1234", "5678"]
于 2017-05-04T14:37:21.623 回答
7

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

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"
        }
    ]
}
于 2017-10-25T12:06:35.940 回答
6
{
    "data" : [  
        {
            "key1" : "value1",
            "key2" : "value2"   
        },
        {
            "key01" : "value01",
            "key02" : "value02"             
        },
        {
            "key10" : "value10",
            "key20" : "value20"   
        }
    ]
}

你可以这样通过。

于 2018-07-13T13:12:27.140 回答
5

选择 form-data 或 urlencoded 并使用相同的键“user_ids”。服务器应将其作为数组接收。

于 2012-10-06T20:21:42.383 回答
3

在表单数据中,

   key              value

 user_ids[]         1234
 user_ids[]         5678
于 2018-01-16T10:25:43.747 回答
2

我的后端是用 Ruby on Rails 编写的。这就是我使用 Postman 发送数组参数的方式。它对我有用。

更新

我正在使用x-www-form-urlencoded。我相信它也适用于form-data

在此处输入图像描述

于 2021-08-25T02:51:31.910 回答
0

我在这里和其他帖子中尝试了所有解决方案,但没有任何帮助。

唯一的答案对我有帮助:
在函数签名中的参数声明之前添加 [FromBody] 属性:

[Route("MyFunc")]        
public string MyFunc([FromBody] string[] obj)
于 2017-01-09T09:16:01.233 回答
0

假设您有下面的对象数组,

features: [
      {
        title: { type: String },
        type: { type: String },
      },
    ],

要在邮递员的表单数据上添加值,请以这种方式添加

features[title]
features[type]

还要检查下面的图片

在此处输入图像描述

于 2022-01-15T09:01:30.197 回答
0

这是对我有用的东西

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

我相信这取决于大多数时候后端是如何设置的。

于 2022-01-27T14:58:38.230 回答
0

注意如果上述所有解决方案都没有,现在我们已经到了 2022 年,请不要惊慌。使用不带括号的值传递数组名称并多次添加,只需链接下图的显示方式即可。它应该工作得很好。如果它确实有效,请给我买点咖啡,hhh

在此处输入图像描述

于 2022-02-26T13:21:48.333 回答