Api-blueprint: Tanggapan tanpa isi, deskripsi?

Dibuat pada 7 Feb 2017  ·  7Komentar  ·  Sumber: apiaryio/api-blueprint

Saya mencoba mengatur deskripsi ke respons yang tidak mengirim isi:

Tidak berfungsi:

+ Response 200 (application/vnd.api+json)

    Received on successful update or insert.

Ini bekerja meskipun:

+ Response 400 (application/vnd.api+json) 

    Received on malformed JSON in the request.

    + Attributes
        - errors (array[Malformed JSON])

Komentar yang paling membantu

+ Response 200 (application/vnd.api+json)

    Received on successful update or insert.

    + Body

Tambahkan tubuh kosong.

Semua 7 komentar

+ Response 200 (application/vnd.api+json)

    Received on successful update or insert.

    + Body

Tambahkan tubuh kosong.

@YamiOdymel Terima kasih pak!

Akan luar biasa untuk dapat menghindari peretasan seperti itu melalui IMO.

Sebenarnya, badan kosong bukanlah JSON yang valid . Saya menggunakan {} sebagai gantinya, tetapi Anda mungkin lebih suka null .

@franklinyu String kosong memang bukan badan yang valid untuk JSON . Sebenarnya, null juga bukan JSON yang valid. JSON yang valid harus memiliki kumpulan kunci/nilai (bahkan yang kosong, misalnya {} ) atau daftar (mungkin juga yang kosong, misalnya [] ).

Tapi, dalam masalah ini kita berbicara tentang JSON API yang memungkinkan badan kosong. JSON API menggunakan JSON untuk badan yang tidak kosong, tetapi BUKAN JSON. Cakupannya lebih luas dari sekedar format serialisasi data.

PEMBARUAN: Entah bagaimana informasi tentang json.org agak menyesatkan, null adalah JSON yang benar-benar valid menurut spesifikasi ECMA . Jadi nilai apa pun (objek, larik, string, angka, benar, salah, nol) adalah warga tingkat atas JSON yang valid.

@ixti Saya pernah mendengar tentang JSON API tetapi tidak terbiasa dengannya; Saya membaca sekilas spesifikasinya tetapi tidak menemukan kata kunci seperti "tubuh kosong".

@franklinyu Lihatlah deskripsi tanggapan:

Lebih dari itu. Anda TIDAK HARUS mengirim badan dengan 204 respons sesuai dengan spesifikasi HTTP juga.

Untuk badan kosong dalam hal ini, saya memilih untuk tidak menentukan tipe konten sama sekali. Klien tidak boleh bergantung pada tipe konten dalam respons "204 Tanpa Konten". Saya pikir saya melenceng dari topik…

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

zdne picture zdne  ·  14Komentar

netmilk picture netmilk  ·  18Komentar

zdne picture zdne  ·  34Komentar

martijnschouwe picture martijnschouwe  ·  117Komentar

pareeohnos picture pareeohnos  ·  28Komentar