mirror of
https://github.com/Kong/insomnia
synced 2024-11-07 22:30:15 +00:00
OpenAPI v3 import robustness (#2007)
* Make openapi3 import more robust by checking if the server tag exists before consuming it * Fix formating
This commit is contained in:
parent
daef7806c8
commit
0b0c5baa0e
@ -0,0 +1,162 @@
|
|||||||
|
openapi: '3.0.0'
|
||||||
|
info:
|
||||||
|
title: Simple API overview
|
||||||
|
version: 2.0.0
|
||||||
|
paths:
|
||||||
|
/:
|
||||||
|
get:
|
||||||
|
operationId: listVersionsv2
|
||||||
|
summary: List API versions
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: |-
|
||||||
|
200 response
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
examples:
|
||||||
|
foo:
|
||||||
|
value: |
|
||||||
|
{
|
||||||
|
"versions": [
|
||||||
|
{
|
||||||
|
"status": "CURRENT",
|
||||||
|
"updated": "2011-01-21T11:33:21Z",
|
||||||
|
"id": "v2.0",
|
||||||
|
"links": [
|
||||||
|
{
|
||||||
|
"href": "http://127.0.0.1:8774/v2/",
|
||||||
|
"rel": "self"
|
||||||
|
}]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"status": "EXPERIMENTAL",
|
||||||
|
"updated": "2013-07-23T11:33:21Z",
|
||||||
|
"id": "v3.0",
|
||||||
|
"links": [
|
||||||
|
{
|
||||||
|
"href": "http://127.0.0.1:8774/v3/",
|
||||||
|
"rel": "self"
|
||||||
|
}]
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
'300':
|
||||||
|
description: |-
|
||||||
|
300 response
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
examples:
|
||||||
|
foo:
|
||||||
|
value: |
|
||||||
|
{
|
||||||
|
"versions": [
|
||||||
|
{
|
||||||
|
"status": "CURRENT",
|
||||||
|
"updated": "2011-01-21T11:33:21Z",
|
||||||
|
"id": "v2.0",
|
||||||
|
"links": [
|
||||||
|
{
|
||||||
|
"href": "http://127.0.0.1:8774/v2/",
|
||||||
|
"rel": "self"
|
||||||
|
}]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"status": "EXPERIMENTAL",
|
||||||
|
"updated": "2013-07-23T11:33:21Z",
|
||||||
|
"id": "v3.0",
|
||||||
|
"links": [
|
||||||
|
{
|
||||||
|
"href": "http://127.0.0.1:8774/v3/",
|
||||||
|
"rel": "self"
|
||||||
|
}]
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
/v2:
|
||||||
|
get:
|
||||||
|
operationId: getVersionDetailsv2
|
||||||
|
summary: Show API version details
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: |-
|
||||||
|
200 response
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
examples:
|
||||||
|
foo:
|
||||||
|
value: |
|
||||||
|
{
|
||||||
|
"version":
|
||||||
|
{
|
||||||
|
"status": "CURRENT",
|
||||||
|
"updated": "2011-01-21T11:33:21Z",
|
||||||
|
"media-types": [
|
||||||
|
{
|
||||||
|
"base": "application/xml",
|
||||||
|
"type": "application/vnd.openstack.compute+xml;version=2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"base": "application/json",
|
||||||
|
"type": "application/vnd.openstack.compute+json;version=2"
|
||||||
|
}],
|
||||||
|
"id": "v2.0",
|
||||||
|
"links": [
|
||||||
|
{
|
||||||
|
"href": "http://127.0.0.1:8774/v2/",
|
||||||
|
"rel": "self"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"href": "http://docs.openstack.org/api/openstack-compute/2/os-compute-devguide-2.pdf",
|
||||||
|
"type": "application/pdf",
|
||||||
|
"rel": "describedby"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"href": "http://docs.openstack.org/api/openstack-compute/2/wadl/os-compute-2.wadl",
|
||||||
|
"type": "application/vnd.sun.wadl+xml",
|
||||||
|
"rel": "describedby"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"href": "http://docs.openstack.org/api/openstack-compute/2/wadl/os-compute-2.wadl",
|
||||||
|
"type": "application/vnd.sun.wadl+xml",
|
||||||
|
"rel": "describedby"
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
'203':
|
||||||
|
description: |-
|
||||||
|
203 response
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
examples:
|
||||||
|
foo:
|
||||||
|
value: |
|
||||||
|
{
|
||||||
|
"version":
|
||||||
|
{
|
||||||
|
"status": "CURRENT",
|
||||||
|
"updated": "2011-01-21T11:33:21Z",
|
||||||
|
"media-types": [
|
||||||
|
{
|
||||||
|
"base": "application/xml",
|
||||||
|
"type": "application/vnd.openstack.compute+xml;version=2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"base": "application/json",
|
||||||
|
"type": "application/vnd.openstack.compute+json;version=2"
|
||||||
|
}],
|
||||||
|
"id": "v2.0",
|
||||||
|
"links": [
|
||||||
|
{
|
||||||
|
"href": "http://23.253.228.211:8774/v2/",
|
||||||
|
"rel": "self"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"href": "http://docs.openstack.org/api/openstack-compute/2/os-compute-devguide-2.pdf",
|
||||||
|
"type": "application/pdf",
|
||||||
|
"rel": "describedby"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"href": "http://docs.openstack.org/api/openstack-compute/2/wadl/os-compute-2.wadl",
|
||||||
|
"type": "application/vnd.sun.wadl+xml",
|
||||||
|
"rel": "describedby"
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,59 @@
|
|||||||
|
{
|
||||||
|
"__export_date": "2020-03-24T06:16:20.516Z",
|
||||||
|
"__export_format": 4,
|
||||||
|
"__export_source": "insomnia.importers:v0.1.0",
|
||||||
|
"_type": "export",
|
||||||
|
"resources": [
|
||||||
|
{
|
||||||
|
"_id": "__WORKSPACE_ID__",
|
||||||
|
"_type": "workspace",
|
||||||
|
"description": "",
|
||||||
|
"name": "Simple API overview 2.0.0",
|
||||||
|
"parentId": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_id": "__BASE_ENVIRONMENT_ID__",
|
||||||
|
"_type": "environment",
|
||||||
|
"data": {
|
||||||
|
"base_url": "{{ scheme }}://{{ host }}{{ base_path }}"
|
||||||
|
},
|
||||||
|
"name": "Base environment",
|
||||||
|
"parentId": "__WORKSPACE_ID__"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_id": "env___BASE_ENVIRONMENT_ID___sub",
|
||||||
|
"_type": "environment",
|
||||||
|
"data": {
|
||||||
|
"base_path": "",
|
||||||
|
"host": "example.com",
|
||||||
|
"scheme": "http"
|
||||||
|
},
|
||||||
|
"name": "OpenAPI env",
|
||||||
|
"parentId": "__BASE_ENVIRONMENT_ID__"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_id": "req___WORKSPACE_ID__316fc296",
|
||||||
|
"_type": "request",
|
||||||
|
"authentication": {},
|
||||||
|
"body": {},
|
||||||
|
"headers": [],
|
||||||
|
"method": "GET",
|
||||||
|
"name": "List API versions",
|
||||||
|
"parameters": [],
|
||||||
|
"parentId": "__WORKSPACE_ID__",
|
||||||
|
"url": "{{ base_url }}/"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_id": "req___WORKSPACE_ID__4dd01204",
|
||||||
|
"_type": "request",
|
||||||
|
"authentication": {},
|
||||||
|
"body": {},
|
||||||
|
"headers": [],
|
||||||
|
"method": "GET",
|
||||||
|
"name": "Show API version details",
|
||||||
|
"parameters": [],
|
||||||
|
"parentId": "__WORKSPACE_ID__",
|
||||||
|
"url": "{{ base_url }}/v2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -65,8 +65,9 @@ module.exports.convert = async function(rawData) {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const servers = api.servers.map(s => urlParse(s.url));
|
const servers = api.servers || [];
|
||||||
const defaultServer = servers[0] || urlParse('http://example.com/');
|
const serverUrls = servers.map(s => urlParse(s.url));
|
||||||
|
const defaultServer = serverUrls[0] || urlParse('http://example.com/');
|
||||||
const securityVariables = getSecurityEnvVariables(
|
const securityVariables = getSecurityEnvVariables(
|
||||||
api.components && api.components.securitySchemes,
|
api.components && api.components.securitySchemes,
|
||||||
);
|
);
|
||||||
|
Loading…
Reference in New Issue
Block a user