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"
  }
]

Antworten:


175

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

Geben Sie hier die Bildbeschreibung ein


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"
      }
 ]

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


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!


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


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


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


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.


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


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


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



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": "tom@outerspace.com", "priority": 1, "status": 2, **"custom_fields" : { "cf_type_of_issue" : "Complaint" }**, "cc_emails": ["ram@freshdesk.com","diana@freshdesk.com"] }

Geben Sie hier die Bildbeschreibung ein

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.