Ich habe die Postman Chrome-Erweiterung zum Testen meiner API verwendet und möchte eine Reihe von IDs per Post senden. Gibt es eine Möglichkeit, eine Liste als Parameter in Postman zu senden?
{
user_ids: ["1234", "5678"]
}
Ich habe die Postman Chrome-Erweiterung zum Testen meiner API verwendet und möchte eine Reihe von IDs per Post senden. Gibt es eine Möglichkeit, eine Liste als Parameter in Postman zu senden?
{
user_ids: ["1234", "5678"]
}
Antworten:
Sie müssen Ihren Variablennamen []
wie folgt anhängen :
Wenn dies nicht funktioniert, versuchen Sie, keine Indizes in Klammern zu setzen:
my_array[] value1
my_array[] value2
Hinweis:
Wenn Sie die App Postman Packaged verwenden , können Sie ein Array senden, indem Sie raw
/ json
(anstelle von form-data
) auswählen . Stellen Sie außerdem sicher zu Satz Content-Type
wie application/json
in Headers
Tab. Hier ist ein Beispiel für Rohdaten {"user_ids": ["123" "233"]}
, vergessen Sie nicht die Anführungszeichen!
Wenn Sie den Postman-REST-Client verwenden , müssen Sie die oben beschriebene Methode verwenden, da die Übergabe von Daten als Rohdaten (json) nicht funktioniert. Es gibt einen Fehler im Postman-REST-Client (zumindest bekomme ich den Fehler, wenn ich ihn verwende 0.8.4.6
).
my_array[hashname] value1
my_array[] value
erstellt einen Array-Parameter mit den angegebenen Werten als key => [value
]. my_array[key] value
wird einen Hash erstellen, als {key => value}
.
Für mich funktionierte nicht mit Array [0], Array 1 , .. oder Array [], Array [], .... Es funktioniert einfacher:
Hier ist meine Lösung:
Verwenden Sie Formulardaten und bearbeiten Sie diese wie folgt:
Key Value
box[] a
box[n1] b
box[n2][] c
box[n2][] d
und Sie erhalten ein Array wie folgt:
{"box":{"0":"a","n1":"b","n2":["c","d"]}}
Ich hatte auch dieses Problem und löste es wie folgt:
1 - Gehen Sie zur Konfiguration des Anforderungsheaders und fügen Sie Folgendes hinzu:
Accept : application/json, text/plain, */*
Content-Type : application/json;charset=UTF-8
2 - Um das JSON-Array zu senden, ging ich zum Raw-JSON-Format und setzte die user_ids auf Array:
user_ids: ["bbbbbbbbbb","aaaaaaaaaa","987654321","123456789"]
Wie von @pinouchon erwähnt, können Sie es mit Hilfe des Array-Index übergeben
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
Beispiel:
To pass param1=[{name:test_name, value:test_value}, {...}]
param1[0][name] test_name
param1[0][value] test_value
social_links[0].name
die zusätzliche Periode zu
name
ist in Ihrem Beispiel, wenn es sich auch um ein Array handelt? Ich habe etwas wie social_links[0]name[0]
in Django REST Framework (verschachtelter beschreibbarer Modell-Serializer mit vielen-zu-vielen-Beziehungen) ausprobiert und es hat nicht funktioniert.
Es ist wichtig zu wissen, dass das Feld VALUE nur einen Zahlenwert enthalten darf (keine Bezeichner).
Wenn Sie z. B. ein Array von "Nachrichten" mit Postman senden möchten, die jeweils eine Liste von Schlüssel / Wert-Paaren enthalten, geben Sie z. B. Nachrichten [] [Grund] in das Feld KEY und den Wert von Grund in das Feld VALUE ein:
Der Server erhält:
{"messages"=>[{"reason"=>"scrolled", "tabid"=>"2"}, {"reason"=>"reload", "tabid"=>"1"}], "endpoint"=>{}}
in Kopfzeilen gesetzt
content-type : application/x-www-form-urlencoded
Im Körper wählen Sie Option
x-www-form-urlencoded
und Daten als JSON-Array einfügen
user_ids : ["1234", "5678"]
Dies funktioniert auch für Listen innerhalb des Objekts:
Id:37
IdParent:26
Name:Poplet
Values[0].Id:1349
Values[0].Name:SomeName
Values[1].Id:1350
Values[1].Name:AnotherName
Das äquivalente JSON wäre:
{
"Id": 37,
"IdParent": 26,
"Name": "Poplet",
"Values": [
{
"Id": 1349,
"Name": "SomeName"
},
{
"Id": 1350,
"Name": "AnotherName"
}
]
}
Wählen Sie entweder Formulardaten oder urlencodiert und verwenden Sie den gleichen Schlüssel "user_ids". Der Server sollte es als Array empfangen.
Content-type
Header mit Wert hinzufügen application/json
.
{
"data" : [
{
"key1" : "value1",
"key2" : "value2"
},
{
"key01" : "value01",
"key02" : "value02"
},
{
"key10" : "value10",
"key20" : "value20"
}
]
}
Sie können so passieren. Hoffe das wird jemandem helfen.
In Formulardaten,
key value
user_ids[] 1234
user_ids[] 5678
Ich habe alle Lösungen hier und in anderen Posts ausprobiert, aber nichts hat geholfen.
Die einzige Antwort hat mir geholfen:
Hinzufügen des Attributs [FromBody] vor der Dekleration des Parameters in der Funktionssignatur:
[Route("MyFunc")]
public string MyFunc([FromBody] string[] obj)