Tukang pos: mengirim objek JSON bersarang


153

Saya menggunakan ASP.NET Web API: http://xyzdomain.com:16845/api/returns/returns

Bagaimana cara mengirim permintaan POST ke titik akhir menggunakan ekstensi Chrome Tukang Pos, yang diberikan Itemsadalah koleksi:

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

Jawaban:


175

Kirim sebagai data mentah dan setel ke application/json

masukkan deskripsi gambar di sini


3
apa yang sebenarnya terjadi ketika data ini dikirim sebagai mentah? Di mana dan bagaimana ini disimpan dalam permintaan?
Anthony To

Saya akan menggunakan proxy web untuk melihat itu jika Anda penasaran (misalnya: pemain biola di Windows, charles proxy di mac)
standup75

1
Bagaimana cara menambahkan file gambar dalam permintaan JSON mentah?
Shikhar varshney

Ya bagaimana kita menambahkan / mengunggah gambar dengan permintaan JSON mentah. @Shikharvarshney Apakah Anda menemukan cara yang lebih baik?
Shahabaz

113

Untuk memposting objek bersarang dengan antarmuka kunci-nilai, Anda dapat menggunakan metode serupa untuk mengirim array. Berikan kunci objek dalam tanda kurung setelah indeks objek.

Melewati item bersarang dengan Tukang Pos

"Items": [
      {
        "sku": "9257",
        "Price": "100"
      }
 ]

8
Ini adalah jawaban terbaik menurut pendapat saya yang sederhana ... Yang paling mudah dan paling mudah dikelola.
AturSams

2
Inilah yang saya cari, hanya saja saya harus menulis Item [sku] bukan Items [0] [sku]
grom

7
Dalam kasus saya, saya memiliki objek bersarang yang disebut lokasi dengan kota, negara bagian dan negara di dalamnya. Saya harus menulis location.city, location.state, dll.
Aafreen Sheikh


27

Ini adalah kombinasi dari yang di atas, karena saya harus membaca beberapa posting untuk mengerti.

  1. Di Headers , tambahkan nilai kunci berikut:
    1. Content-Type untuk application/json
    2. dan Acceptuntukapplication/json

masukkan deskripsi gambar di sini

  1. Di dalam Tubuh :
    1. ubah jenis menjadi "mentah"
    2. konfirmasi "JSON (application / json)" adalah jenis teks
    3. letakkan properti bersarang di sana: { "Obj1" : { "key1" : "val1" } }

masukkan deskripsi gambar di sini

Semoga ini membantu!


3
Seharusnya application/json, tidakapplications
NoobTW

@TBirkulosis: Dengan pendekatan Anda, Json tidak akan dikirim bersama Header
Arpan

26

Pasangan nilai kunci dapat mengambil input tingkat lanjut.

Ex.

masukkan deskripsi gambar di sini


1
Terima kasih banyak, saya pikir ini akan ada di sana tetapi saya mencoba dot annotation. Ini tentu jawaban yang benar
Jack Franzen


9

Pilih tab tubuh dan pilih aplikasi / json di drop-down Content-Type dan tambahkan tubuh seperti ini:

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

masukkan deskripsi gambar di sini


7

Hanya ingin menambahkan satu masalah lagi yang mungkin ditemukan beberapa orang di atas semua jawaban lainnya. Mengirim objek JSON menggunakan data RAW dan mengatur tipe ke application/jsonadalah apa yang harus dilakukan seperti yang telah disebutkan di atas.

Meskipun saya telah melakukannya, saya mendapat kesalahan dalam permintaan POSTMAN, itu karena saya tidak sengaja lupa membuat konstruktor default untuk kedua kelas anak.

Katakan jika saya harus mengirim JSON format:

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

Kemudian pastikan Anda membuat konstruktor default untuk kelas Buku.

Saya tahu ini adalah kesalahan yang sederhana dan tidak biasa, tetapi tentu saja membantu saya.


5

Cara terbaik untuk melakukannya:

  1. Di Headers, tambahkan nilai kunci berikut:

    Content-Type to applications/json
    Accept to applications/json
  2. Di bawah tubuh, klik rawdan ketik dropdown keapplication/json

Juga PFA untuk hal yang sama

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini


4

Untuk Json bersarang (contoh di bawah), Anda dapat membentuk kueri menggunakan tukang pos seperti yang ditunjukkan di bawah ini.

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

masukkan deskripsi gambar di sini


1

Dalam Params saya telah menambahkan model.Email dan model.Password, bekerja untuk saya dengan baik. Terima kasih untuk pertanyaannya. Saya mencoba hal yang sama di header tidak berhasil. Tapi itu bekerja pada Body dengan form-data dan x-www-form-urlencoded.

Tukang pos versi 6.4.4

masukkan deskripsi gambar di sini



1

Hanya untuk mereka yang ingin mengirim objek JSON bersarang dengan formulir-data sebagai tipe konten.

Saya ingin mengirim custom_field bersarang di bawah { "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"] }

masukkan deskripsi gambar di sini

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.