أحاول تعيين وصف لرد لا يرسل نصًا:
لا يعمل:
+ Response 200 (application/vnd.api+json)
Received on successful update or insert.
يعمل هذا على الرغم من:
+ Response 400 (application/vnd.api+json)
Received on malformed JSON in the request.
+ Attributes
- errors (array[Malformed JSON])
+ Response 200 (application/vnd.api+json)
Received on successful update or insert.
+ Body
أضف جسمًا فارغًا.
YamiOdymel شكرا لك سيدي!
سيكون من الرائع أن تكون قادرًا على تجنب مثل هذه الاختراقات على الرغم من IMO.
بالمعنى الدقيق للكلمة ، الجسم الفارغ ليس JSON صالحًا . أستخدم {}
بدلاً من ذلك ، لكنك قد تفضل null
.
franklinyu السلسلة الفارغة ليست JSON بالفعل. بالمعنى الدقيق للكلمة ، null
ليس JSON صالحًا أيضًا. يجب أن تحتوي JSON الصالحة على مجموعة مفتاح / قيمة (حتى لو كانت فارغة ، مثل {}
) أو قائمة (قد تكون أيضًا فارغة ، مثل []
).
ولكن ، في هذه المسألة نتحدث عن JSON API الذي يسمح للأجسام الفارغة. تستخدم JSON API JSON للأجسام غير الفارغة ، ولكنها ليست JSON. النطاق أوسع من مجرد تنسيق تسلسل البيانات.
تحديث: المعلومات عن json.org
مضللة بعض الشيء ، null
هو JSON صالح تمامًا وفقًا لمواصفات ECMA . لذا فإن أي قيمة (كائن ، مصفوفة ، سلسلة ، رقم ، صواب ، خطأ ، فارغ) هي مواطن صالح من المستوى الأعلى لـ JSON.
ixti لقد سمعت عن واجهة برمجة تطبيقات JSON ولكني لست على دراية بها ؛ تصفحت مواصفاته ولكن لم أجد كلمات رئيسية مثل "جسم فارغ".
franklinyu ألق نظرة على وصف الردود:
أكثر من ذلك. يجب ألا ترسل نصًا به استجابة 204 وفقًا لمواصفات HTTP أيضًا.
بالنسبة إلى النص الفارغ في هذه الحالة ، أفضل عدم تحديد نوع المحتوى على الإطلاق. يجب ألا يعتمد العملاء على نوع المحتوى في استجابة "204 بدون محتوى". أعتقد أنني خرجت عن الموضوع ...
التعليق الأكثر فائدة
أضف جسمًا فارغًا.