Я использую расширение Postman Chrome для тестирования своего API и хочу отправить массив идентификаторов через почту. Есть ли способ отправить что-нибудь в качестве параметра в Postman?
{
user_ids: ["1234", "5678"]
}
Я использую расширение Postman Chrome для тестирования своего API и хочу отправить массив идентификаторов через почту. Есть ли способ отправить что-нибудь в качестве параметра в Postman?
{
user_ids: ["1234", "5678"]
}
Вам нужно суффикс имени переменной []
следующим образом:
Если это не работает, попробуйте не ставить индексы в скобки:
my_array[] value1
my_array[] value2
Примечание:
Если вы используете почтово-упакованное приложение, вы можете отправить массив, выбрав raw
/json
(вместо этого of form-data
). Кроме того, не забудьте установить Content-Type
как application/json
на вкладке Headers
.
Вот пример для необработанных данных {"user_ids": ["123" "233"]}
, не забывайте кавычки!
Если вы используете postman REST client, вы должны использовать описанный выше метод, поскольку передача данных как raw (json) не будет работать. В почтовом клиенте REST есть ошибка (по крайней мере, я получаю ошибку при использовании 0.8.4.6
).
Для меня не работало с массивом [0], массивом 1,.. или array [], array [],..., Это работает проще:
Вот мое решение:
используйте данные формы и отредактируйте, как показано ниже:
Key Value
box[] a
box[n1] b
box[n2][] c
box[n2][] d
и вы получите такой массив:
{"box":{"0":"a","n1":"b","n2":["c","d"]}}
У меня также была эта проблема, и я решил ее сделать следующим образом:
1 - переход к конфигурации заголовка запроса и добавление следующего:
Accept : application/json, text/plain, */*
Content-Type : application/json;charset=UTF-8
2 - Чтобы отправить массив json, я вступил в формат raw json и задал массив:
["bbbbbbbbbb","aaaaaaaaaa","987654321","123456789"]
Как уже упоминалось @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
Установите Body как raw и сформируйте массив следующим образом:
это сработало для меня. передать массив объекта Item {ItemID, ColorID, SizeID, Quntity}
Выберите либо данные формы, либо urlencoded, и используйте один и тот же ключ "user_ids". Сервер должен получать его как массив.
в наборе заголовков
content-type : application/x-www-form-urlencoded
В опции выбора тела
х-WWW-форм-urlencoded
и вставить данные в виде массива json
user_ids : ["1234", "5678"]
Важно знать, что поле VALUE может содержать только цифровое значение (без спецификаторов).
Если вы хотите отправить, например, массив "сообщений" с почтальоном, каждое из которых имеет список пар ключ/значение, введите, например, messages [] [reason] в поле KEY, а значение причины - в поле VALUE:
Сервер получит:
{"messages"=>[{"reason"=>"scrolled", "tabid"=>"2"}, {"reason"=>"reload", "tabid"=>"1"}], "endpoint"=>{}}
Это также работает для списков внутри объекта:
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"
}
]
}
{
"data" : [
{
"key1" : "value1",
"key2" : "value2"
},
{
"key01" : "value01",
"key02" : "value02"
},
{
"key10" : "value10",
"key20" : "value20"
}
]
}
Вы можете пройти так. Надеюсь, это кому-нибудь поможет.
Перейдите в заголовок и выберите Content-Type
= application/json
затем перейдите в тело и выберите raw
а затем передайте массив.
Я пробовал все решения здесь и в других сообщениях, но ничего не помогло.
Единственный ответ помог мне:
Добавление атрибута [FromBody] перед объявлением параметра в сигнатуре функции:
[Route("MyFunc")]
public string MyFunc([FromBody] string[] obj)
В форме данных,
key value
user_ids[] 1234
user_ids[] 5678