我的OpenAPI规范文件有问题。我试图调用一个公开的URL来“获取”一个id,但每次我将服务移植到我的本地,然后尝试通过API文件发送请求我的连接被拒绝。我将不胜感激任何帮助。我期待的id将采用JSON格式。以下是我的spec文件
openapi: "3.0.0"
info:
version: 1.0.0
title: Id Generator
servers:
url: www.someurl.com
paths:
/posts:
get:
summary: Get Id
operationId: id
tags:
- posts
responses:
200:
description: successful operation
content:
application/json:
schema:
$ref: "#/definition/Post"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/definition/Error"
definition:
Post:
type: object
properties:
id:
type: string
Error:
properties:
id:
type: string
答案 0 :(得分:1)
截至2017年6月21日,OpenAPI规范3.0尚未推出,Swagger UI尚不支持OpenAPI 3.0,因此您的示例无法正常工作。请密切关注Swagger UI releases页面,了解何时可以获得对OpenAPI 3.0的支持。
此外,您需要修复规范中的错误,使其成为有效的OpenAPI 3.0规范:
servers
是一个数组,因此将其更改为:
servers:
- url: http://www.someurl.com
必须引用回复状态代码:"200"
或'200'
。
缩进架构下的$ref
:
schema:
$ref: "#/definition/Post"
...
schema:
$ref: "#/definition/Error"
将definition
更改为components
- > schemas
并修复Post
的缩进:
components:
schemas:
Post:
type: object
properties:
id:
type: string
Error:
properties:
id:
type: string