Roh*_*war 5 php swagger swagger-ui swagger-2.0
JSON 规范:
\n\n"responses": {\n "200": {\n "description": "\xd0\xa3\xd1\x81\xd0\xbf\xd0\xb5\xd1\x88\xd0\xbd\xd1\x8b\xd0\xb9 \xd0\xbe\xd1\x82\xd0\xb2\xd0\xb5\xd1\x82 \xd1\x81\xd0\xb5\xd1\x80\xd0\xb2\xd0\xb8\xd1\x81\xd0\xb0",\n "schema": {\n "$ref": "#/definitions/BaseResponse"\n },\n "examples": {\n "application/json": {\n "status": true,\n "response": {\n "$ref": "#/definitions/Product"\n },\n "errors": null\n }\n }\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n\n\n\n但是我需要:
\n\n{\n "status": true,\n "response": {\n "ProductNumber": "number",\n "Barcode": "number",\n "Length": 12,\n "Width": 34,\n "Height": 423,\n "Volume": 1232\n }\n },\n "errors": null\n}\nRun Code Online (Sandbox Code Playgroud)\n\n我如何使用 $refs 到示例数组中进行自定义格式响应?\n这是一个典型案例,但我找不到它的文档。感谢您的反馈。
\n内联示例不支持$ref- 示例必须是完整示例:
"responses": {\n "200": {\n "description": "\xd0\xa3\xd1\x81\xd0\xbf\xd0\xb5\xd1\x88\xd0\xbd\xd1\x8b\xd0\xb9 \xd0\xbe\xd1\x82\xd0\xb2\xd0\xb5\xd1\x82 \xd1\x81\xd0\xb5\xd1\x80\xd0\xb2\xd0\xb8\xd1\x81\xd0\xb0",\n "schema": {\n "$ref": "#/definitions/BaseResponse"\n },\n "examples": {\n "application/json": {\n "status": true,\n "response": {\n "ProductNumber": "number",\n "Barcode": "number",\n "Length": 12,\n "Width": 34,\n "Height": 423,\n "Volume": 1232\n },\n "errors": null\n }\n }\n }\n }\nRun Code Online (Sandbox Code Playgroud)\n\nresponses.<code>.examples您可以在中指定示例值,而不是使用BaseResponse,Swagger UI 将使用这些值。
例如,您可以将完整的示例添加到您的BaseResponse架构中:
"responses": {\n "200": {\n "description": "\xd0\xa3\xd1\x81\xd0\xbf\xd0\xb5\xd1\x88\xd0\xbd\xd1\x8b\xd0\xb9 \xd0\xbe\xd1\x82\xd0\xb2\xd0\xb5\xd1\x82 \xd1\x81\xd0\xb5\xd1\x80\xd0\xb2\xd0\xb8\xd1\x81\xd0\xb0",\n "schema": {\n "$ref": "#/definitions/BaseResponse"\n },\n "examples": {\n "application/json": {\n "status": true,\n "response": {\n "ProductNumber": "number",\n "Barcode": "number",\n "Length": 12,\n "Width": 34,\n "Height": 423,\n "Volume": 1232\n },\n "errors": null\n }\n }\n }\n }\nRun Code Online (Sandbox Code Playgroud)\n\n或使用属性级示例:
\n\n "definitions": {\n "BaseResponse": {\n "type": "object",\n "properties": {\n "status": {\n "type": "boolean"\n },\n ...\n },\n "example": { // <------ schema-level example\n "status": true,\n "response": {\n "ProductNumber": "number",\n "Barcode": "number",\n "Length": 12,\n "Width": 34,\n "Height": 423,\n "Volume": 1232\n },\n "errors": null\n }\n }\n }\nRun Code Online (Sandbox Code Playgroud)\n\n我想指出的是,"errors": null和"example": null在 OpenAPI 2.0 (fka Swagger) 中实际上并不有效,因为它不支持可为 null 的类型。支持可空类型。