Postbote: Verschachteltes JSON-Objekt senden

152

Ich verwende die ASP.NET-Web-API: http://xyzdomain.com:16845/api/returns/returns

Wie sende ich eine POST-Anfrage mit der Postman Chrome-Erweiterung an den Endpunkt? Es Itemshandelt sich um eine Sammlung:

[
  {
    "Items": [
      {
        "sku": "9257",
        "Price": "100",
        "Quantity": "500",
        "DiscountPercent": "1",
        "backordered": "2"
      }
    ],
    "order_id": "F429768865001",
    "status_code": "Shelf",
    "Exception": "no error"
  }
]
user3965303
quelle

Antworten:

175

Senden Sie es als Rohdaten und setzen Sie den Typ auf application/json

Geben Sie hier die Bildbeschreibung ein

standup75
quelle
3
Was passiert eigentlich, wenn diese Daten als Rohdaten gesendet werden? Wo und wie wird es in der Anfrage gespeichert?
Anthony bis
Ich würde einen Web-Proxy verwenden, um das zu überprüfen, wenn Sie neugierig sind (zum Beispiel: Fiddler unter Windows, Charles Proxy auf Mac)
standup75
1
Wie füge ich der JSON-Rohanforderung eine Bilddatei hinzu?
Shikhar Varshney
Ja, wie können wir Bilder mit einer unformatierten JSON-Anfrage hinzufügen / hochladen? @ Shikharvarshney Hast du einen besseren Weg gefunden?
Shahabaz
112

Um ein verschachteltes Objekt mit der Schlüssel-Wert-Schnittstelle zu veröffentlichen, können Sie eine ähnliche Methode wie beim Senden von Arrays verwenden. Übergeben Sie einen Objektschlüssel in eckigen Klammern nach dem Objektindex.

Übergeben eines verschachtelten Elements mit Postman

"Items": [
      {
        "sku": "9257",
        "Price": "100"
      }
 ]
Peyotle
quelle
8
Dies ist meiner bescheidenen Meinung nach die beste Antwort ... Die einfachste und am einfachsten zu handhabende.
AturSams
2
Dies ist, wonach ich gesucht habe, nur dass ich Items [sku] anstelle von Items [0] [sku] schreiben musste
grom
7
In meinem Fall hatte ich ein verschachteltes Objekt namens Standort mit Stadt, Bundesland und Land. Ich musste location.city, location.state usw. schreiben
Aafreen Sheikh
36

Ich habe es mit der Option Rohdaten in Postman zum Laufen gebracht, wie Sie im Screenshot sehen können

Geben Sie hier die Bildbeschreibung ein

ImranNaqvi
quelle
Das ist perfekt
Sachin Pakale
Das ist perfekt
dvn
27

Dies ist eine Kombination der oben genannten, da ich mehrere Beiträge lesen musste, um zu verstehen.

  1. Fügen Sie in den Kopfzeilen die folgenden Schlüsselwerte hinzu:
    1. Content-Type zu application/json
    2. und Acceptzuapplication/json

Geben Sie hier die Bildbeschreibung ein

  1. Im Körper :
    1. Ändern Sie den Typ in "raw".
    2. Bestätigen Sie, dass "JSON (application / json)" der Texttyp ist
    3. Legen Sie die verschachtelte Eigenschaft dort ab: { "Obj1" : { "key1" : "val1" } }

Geben Sie hier die Bildbeschreibung ein

Hoffe das hilft!

TBirkulose
quelle
3
Es sollte application/jsonnicht seinapplications
NoobTW
@ TBirkulosis: Mit Ihrem Ansatz wird Json nicht mit Header
Arpan
26

Das Schlüssel-Wert-Paar kann erweiterte Eingaben annehmen.

Ex.

Geben Sie hier die Bildbeschreibung ein

aefhm
quelle
1
Vielen Dank, ich dachte, das wäre da, aber ich habe versucht, Punkte zu kommentieren. Dies ist sicherlich die richtige Antwort
Jack Franzen
23

Fügen Sie einfach diese Parameter hinzu: Fügen Sie in der Header- Option der Anforderung hinzuContent-Type:application/json

Header Inhaltstyp Postbote json

und im Körper wählen Sie Raw- Format und setzen Sie Ihre json-Parameter wie{'guid':'61791957-81A3-4264-8F32-49BCFB4544D8'}

json Anfrage Postbote

Ich habe die Lösung auf http://www.iminfo.in/post/post-json-postman-rest-client-chrome gefunden

Ema.H
quelle
9

Wählen Sie die Registerkarte " Körper" und wählen Sie " Anwendung / json" in der Dropdown- Liste " Inhaltstyp" aus und fügen Sie einen Körper wie den folgenden hinzu:

{
  "Username":"ABC",
  "Password":"ABC"
}

Geben Sie hier die Bildbeschreibung ein

Suraj Kshirsagar
quelle
7

Ich wollte nur noch ein Problem hinzufügen, das manche Leute vielleicht zusätzlich zu den anderen Antworten finden. Das Senden eines JSON-Objekts unter Verwendung von RAW-Daten und das Festlegen des Typs application/jsonerfolgt wie oben erwähnt.

Obwohl ich dies getan hatte, wurde in der POSTMAN-Anforderung ein Fehler angezeigt, weil ich versehentlich vergessen habe, einen Standardkonstruktor für beide untergeordneten Klassen zu erstellen.

Sagen Sie, wenn ich einen JSON im Format senden müsste:

{
 "firstname" : "John",
 "lastname" : "Doe",
 "book":{
   "name":"Some Book",
   "price":12.2
  }
}

Stellen Sie dann einfach sicher, dass Sie einen Standardkonstruktor für die Buchklasse erstellen.

Ich weiß, dass dies ein einfacher und ungewöhnlicher Fehler ist, hat mir aber sicherlich geholfen.

Bhanushrestha
quelle
5

Der beste Weg, dies zu tun:

  1. Fügen Sie in den Kopfzeilen die folgenden Schlüsselwerte hinzu:

    Content-Type to applications/json
    Accept to applications/json
  2. Klicken rawSie unter body auf und geben Sie Dropdown einapplication/json

Auch PFA für das gleiche

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Techyaura
quelle
4

Für einen verschachtelten Json (Beispiel unten) können Sie eine Abfrage mit dem Postboten erstellen, wie unten gezeigt.

{
    "Items": {
        "sku": "10 Units",
        "Price": "20 Rs"
    },
    "Characteristics": {
        "color": "blue",
        "weight": "2 lb"
    }
}

Geben Sie hier die Bildbeschreibung ein

Arpan
quelle
1

In den Params habe ich model.Email und model.Password hinzugefügt, funktioniert gut für mich. Danke für die Frage. Ich habe das gleiche versucht in Headern hat nicht funktioniert. Aber es funktionierte auf Body mit Formulardaten und x-www-form-urlencoded.

Postbote Version 6.4.4

Geben Sie hier die Bildbeschreibung ein

Kapila Perera
quelle
1

Wir können verschachtelte JSON wie das folgende Format senden

Adresse [Stadt] Adresse [Bundesland]

Atchutha Rama Reddy Karri
quelle
1

Nur für diejenigen, die ein verschachteltes JSON-Objekt mit Formulardaten als Inhaltstyp senden möchten.

Ich möchte verschachteltes custom_field unten senden { "description": "Details about the issue...", "subject": "Support Needed...", "type": "Others", "email": "[email protected]", "priority": 1, "status": 2, **"custom_fields" : { "cf_type_of_issue" : "Complaint" }**, "cc_emails": ["[email protected]","[email protected]"] }

Geben Sie hier die Bildbeschreibung ein

Muhammad Maqsood
quelle