修改网关以使用 OpenAPI 3.x
本页介绍了如何修改现有 API 网关,以使用 OpenAPI 3.x 规范作为其 API 配置。
准备工作
- 确认您已配置一个具有 OpenAPI 2.0 规范的现有 API Gateway 实例。
- 安装
gcloudCLI。如需了解详情,请参阅安装 Google Cloud CLI。
修改 API 配置以使用 OpenAPI 3.x
如需修改现有的 OpenAPI 2.0 API Gateway 配置以使用 OpenAPI 3.x,请完成以下步骤:
查找当前 API 配置
查找与网关关联的 API 配置。
描述您的 API Gateway 实例:
gcloud api-gateway gateways describe GATEWAY_ID --project=PROJECT_ID --location=GATEWAY_LOCATION替换以下内容:
- GATEWAY_ID:网关的 ID。
- PROJECT_ID:您的 Google Cloud 项目 ID。
- GATEWAY_LOCATION:网关的位置。
输出会显示
apiConfig路径,例如:apiConfig: projects/my-project/locations/global/apis/my-api/configs/my-gateway-config createTime: '2025-03-25T02:49:58.641650649Z' defaultHostname: my-gateway-a1b2c3d4.uc.gateway.dev displayName: My gateway name: projects/my-project/locations/us-west1/gateways/my-new-gateway state: ACTIVE updateTime: '2025-03-25T02:51:52.674308428Z'
获取 OpenAPI 文档
如需获取您确定的 API 配置的 OpenAPI 文档,请执行以下操作:
描述 API 配置:
gcloud api-gateway api-configs describe CONFIG_ID --api=API_ID --project=PROJECT_ID --view=FULL替换以下内容:
- CONFIG_ID:API 配置的 ID。
- API_ID:您的 API 的 ID。
- PROJECT_ID:您的 Google Cloud 项目 ID。
输出会显示
openapiDocuments部分,其中包含 OpenAPI 文档的 base64 编码内容:createTime: '2024-02-16T21:11:36.293169474Z' displayName: my-api-config gatewayServiceAccount: projects/-/serviceAccounts/api-gateway-sa@my-sandbox.iam.gserviceaccount.com name: projects/my-project-id/locations/global/apis/my-api/configs/my-gateway-config openapiDocuments: - document: contents: IyBvc... path: apigateway-config.yaml serviceConfigId: my-api-config-0a1fjkfeb7t8z state: ACTIVE updateTime: '2024-02-16T21:13:45.626771120Z'
解码 OpenAPI 文档
如需对 base64 编码的 OpenAPI 文档内容进行解码,请执行以下操作:
解码
contents值:echo 'IyBvc...' |