يبدو أن ملف swagger في https://docs.discourse.org/openapi.json غير صالح.
سيناريو إعادة الإنتاج:
- انتقل إلى https://editor.swagger.io/
- انقر على File → استيراد URL.
- أدخل الرابط.
بعد بضع ثوانٍ، تظهر 142 خطأً في التحقق من الصحة.
لا يمكن إرفاق الملف، لكنه يشبه:
خطأ هيكلي في paths./categories.json.post.responses.200.content.application/json.schema.properties.category.properties.name.description
يجب أن يكون نصًا
الانتقال إلى السطر 184
خطأ هيكلي في paths./categories.json.post.responses.200.content.application/json.schema.properties.category.properties.color.description
يجب أن يكون نصًا
الانتقال إلى السطر 187
خطأ هيكلي في paths./categories.json.post.responses.200.content.application/json.schema.properties.category.properties.text_color.description
يجب أن يكون نصًا
الانتقال إلى السطر 190
... المزيد ...
هل توجد تعريف swagger بديل (صالح) متاح؟
التصحيح المقترح
ما يلي هو تصحيح مقترح حتى الآن.
ملخص
diff --git "a/discourse-swagger-original.json" "b/discourse-swagger.json"
index f9267f5d0..dcebe3fd8 100644
--- "a/discourse-swagger-original.json"
+++ "b/discourse-swagger.json"
@@ -578,8 +578,8 @@
},
"available_groups": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
@@ -1196,8 +1196,8 @@
},
"actions_summary": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
@@ -1788,8 +1788,8 @@
},
"actions_summary": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
@@ -1885,8 +1885,8 @@
},
"stream": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
@@ -1899,14 +1899,14 @@
},
"timeline_lookup": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"properties": {
"0": {
"type": "array",
"uniqueItems": true,
- "minItems": null,
+ "minItems": 0,
"items": {
"type": "object"
}
@@ -3621,8 +3621,8 @@
"properties": {
"user_badges": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
@@ -3798,8 +3798,8 @@
},
"featured_user_badge_ids": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
@@ -3864,8 +3864,8 @@
"properties": {
"user_badges": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
@@ -4041,8 +4041,8 @@
},
"featured_user_badge_ids": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
@@ -4734,8 +4734,8 @@
},
"posters": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
@@ -4745,16 +4745,16 @@
},
"users": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
},
"categories": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
@@ -4773,24 +4773,24 @@
},
"post_ids": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
},
"user_ids": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
},
"category_ids": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
@@ -6406,8 +6406,8 @@
},
"owners": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
@@ -7241,8 +7241,8 @@
},
"choices": {
"type": "array",
- "uniqueItems": null,
- "minItems": null,
+ "uniqueItems": false,
+ "minItems": 0,
"items": {
"type": "object"
}
