云服务器内容精选

  • 导入到新分组注意事项 将API定义导入到一个新的分组,导入过程中系统会自动创建一个新的API分组,并将导入的API归属到该分组。 适用于将一份全新且完整的API导入到API网关。 导入API前,请注意以下事项: API网关中API分组和API的配额满足需求。 使用Swagger info或OpenAPI info的title作为API分组名称,新创建的API分组名称不能与已有的API分组名称重名。 导入的API定义中,如果存在冲突,那么根据系统导入的先后顺序,先导入的API会显示导入成功,后导入的API会显示导入失败。例如导入的API定义中存在2个名称相同或请求路径相同的API,那么先导入的API会显示导入成功,后导入的会显示导入失败。 如果选择扩展覆盖,当导入API的扩展定义项名称与已有策略(ACL,流量控制等)名称相同时,则会覆盖已有策略(ACL,流量控制等)。 导入的API不会自动发布到环境,导入时可以选择“立即发布”或者“稍后发布”,您可以自行选择策略。
  • 导入到已有分组注意事项 将API定义导入到一个已有的分组,导入过程中不会删除分组中已有的API,只是将新增的API导入分组。 适用于将一个新的API或者一个修改后的API导入到已有的分组。 导入API前,请注意以下事项: API网关中API的配额满足需求。 导入的API定义与已有的API定义冲突时,您可以选择使用导入的API定义覆盖已有的API定义,或者保留已有的API定义,此时导入的API定义会显示导入失败。 如果选择扩展覆盖,当导入API的扩展定义项名称与已有策略(ACL,流量控制等)名称相同时,则会覆盖已有策略(ACL,流量控制等)。 导入的API不会自动发布到环境,导入时可以选择“立即发布”或者“稍后发布”,您可以自行选择策略。
  • 兼容性说明 支持OpenAPI规范。 OpenAPI规范(OAS),是定义一个标准的、与具体编程语言无关的RESTful API的规范。OpenAPI规范的前身是Swagger规范,API网关目前支持两种OpenAPI规范:Swagger 2.0或OpenAPI 3.0。为了方便区分,下文中OAS表示OpenAPI规范(包含Swagger 2.0或OpenAPI 3.0),Swagger表示Swagger 2.0规范,OpenAPI表示OpenAPI 3.0规范。 API网关导入或导出的OAS对象,与API网关对象定义的映射关系。 请求参数类型与API网关参数类型差异。 API请求路径模板语法差异。 导入API时支持的API网关扩展字段。 表1 OAS对象与API网关对象定义的映射关系 Swagger对象 OpenAPI对象 (以3.0.0为例) API网关对象 导入时行为 导出时行为 info.title info.title API分组名称 导入到新的分组:新的分组名称 导入到已有分组:未使用 支持汉字、英文、数字、下划线,且只能以英文或汉字开头,3 ~ 64字符 填充为分组名称 info.description info.description API分组描述 导入到新的分组:新的分组描述 导入到已有分组:未使用 填充为分组描述信息 info.version info.version 版本 未使用 用户指定 未指定则使用当前时间 host server.url API分组域名 未使用 优先使用API分组的第一个自定义域名 如果分组未绑定自定义域名则使用分组的独立域名 basePath - - 将与每条API的请求路径拼接起来使用 未填充 paths.path paths.path API请求路径 与basePath拼接起来作为API请求路径 填充为API请求路径 operation.operationId operation.operationId API名称 作为API名称 填充为API名称 operation.description operation.description API描述 作为API描述 填充为API描述 operation.parameters operation.parameters API前端请求参数 作为API请求参数 填充为API请求参数 operation.schemes - API前端请求协议 作为API请求协议 填充为API请求协议 operation.responses operation.responses - 未使用 固定填充default响应定义 operation.security operation.security API认证方式 API认证方式 结合x-apigateway-auth-type 填充为API认证方式 结合x-apigateway-auth-type 表2 请求参数类型和API网关参数类型差异 OAS类型 API网关类型 支持的参数属性字段 integer long float double number maximum minimum default enum required description string string maxLength minLength default enum required description 其它类型 不支持 不支持 表3 API请求路径模板语法差异 语法 OAS类型Swagger类型 API网关 /users/{userName} 支持 支持 /users/prefix-{userName} /users/{userName}-suffix /users/prefix-{userName} -suffix 支持 前端请求定义不支持 后端请求定义支持 /users/{proxy+} 不支持 前端请求定义支持 后端请求定义不支持
  • 限制说明 API网关参数限制,如下所示。 API网关暂不支持formData和body位置的请求参数定义。 API网关暂不支持consumes和produces定义。 API网关中,header位置的参数名称,不区分大小写。 后端策略限制,如下所示。 默认后端类型为HTTP,策略后端支持HTTP、HTTP-VPC 默认后端类型为HTTP-VPC,策略后端支持HTTP、HTTP-VPC 默认后端类型为function,策略后端支持function 默认后端类型为mock,策略后端支持mock
  • 兼容性说明 只支持Swagger 2.0规范。 API网关导入或导出的Swagger对象,与API网关对象定义的映射关系。 请求参数类型与API网关参数类型差异。 API请求路径模板语法差异。 导入API时支持的API网关扩展字段。 表1 Swagger对象与API网关对象定义的映射关系 Swagger对象 API网关对象 导入时行为 导出时行为 info.title API分组名称 导入到新的分组:新的分组名称 导入到已有分组:未使用 支持汉字、英文、数字、下划线,且只能以英文或汉字开头,3 ~ 64字符 填充为分组名称 info.description API分组描述 导入到新的分组:新的分组描述 导入到已有分组:未使用 填充为分组描述信息 info.version 版本 未使用 用户指定 未指定则使用当前时间 host API分组域名 未使用 优先使用API分组的第一个自定义域名 如果分组未绑定自定义域名则使用分组的独立域名 basePath - 将与每条API的请求路径拼接起来使用 未填充 paths.path API请求路径 与basePath拼接起来作为API请求路径 填充为API请求路径 operation.operationId API名称 作为API名称 填充为API名称 operation.description API描述 作为API描述 填充为API描述 operation.parameters API前端请求参数 作为API请求参数 填充为API请求参数 operation.schemes API前端请求协议 作为API请求协议 填充为API请求协议 operation.responses - 未使用 固定填充default响应定义 operation.security API认证方式 API认证方式 结合x-apigateway-auth-type 填充为API认证方式 结合x-apigateway-auth-type 表2 请求参数类型和API网关参数类型差异 Swagger类型 API网关类型 支持的参数属性字段 integer long float double number maximum minimum default enum required description string string maxLength minLength default enum required description 其它类型 不支持 不支持 表3 API请求路径模板语法差异 语法 Swagger类型 API网关 /users/{userName} 支持 支持 /users/prefix-{userName} /users/{userName}-suffix /users/prefix-{userName} -suffix 支持 前端请求定义不支持 后端请求定义支持 /users/{proxy+} 不支持 前端请求定义支持 后端请求定义不支持
  • 限制说明 API网关参数限制,如下所示。 API网关暂不支持formData和body位置的请求参数定义。 API网关暂不支持consumes和produces定义。 API网关中,header位置的参数名称,不区分大小写。 后端策略限制,如下所示。 默认后端类型为HTTP,策略后端支持HTTP、HTTP-VPC 默认后端类型为HTTP-VPC,策略后端支持HTTP、HTTP-VPC 默认后端类型为function,策略后端支持function 默认后端类型为mock,策略后端支持mock