如果您在 Google Cloud上为您的应用添加了 API 管理,但后来决定不再需要 API 管理功能,则可以配置 Cloud Endpoints Frameworks 以停止管理 API。
移除 API 管理不会导致停止提供 API。如果您想停止提供 API,您可以在 Google Cloud 控制台的 App Engine 设置页面上禁用该应用,也可以删除 Google Cloud 项目。如需了解详情,请参阅停用应用和关闭项目。
要移除 API 管理,请执行以下操作:
- 备份您的 API 项目的 - web.xml和- appengine-web.xml文件。
- 在 API 项目的 - web.xml文件中,移除以下内容:- endpoints-api-configuration过滤条件。
- endpoints-api-controller过滤条件。
- endpoints-api-configuration过滤条件映射。
- endpoints-api-controller过滤条件映射。
 - 删除过滤条件和过滤条件映射后,您的 - web.xml应类似于如下所示:
- 在 - appengine-web.xml文件中,移除用于定义- ENDPOINTS_SERVICE_NAME环境变量的一行。如果- ENDPOINTS_SERVICE_NAME是您定义的唯一环境变量,请移除整个- env-variables部分。
- 清理项目,然后构建 API: - Maven- mvn clean mvn package - Gradle- gradle clean gradle build 
- 重新部署应用 - Maven- mvn appengine:deploy - Gradle- gradle appengineDeploy 
重新部署应用后,Cloud Endpoints Frameworks 将停止管理您的 API。
验证 API 管理移除
要验证 Endpoints Frameworks 是否不再管理您的 API,请执行以下操作:
- 在 Google Cloud 控制台中,前往 Endpoints > 服务页面。 
- 记下您的 API 中某个方法的请求数量。 
- 点击该方法的 - View logs链接。
- 在 - Produced API日志中,记下最近一条日志条目的日期和时间。
- 向您的 API 中的这一方法发送一些请求。 
- 在 Google Cloud 控制台中,前往 Endpoints > 服务页面。 - 该方法的请求计数器未更新。 
- 点击该方法的 - View logs链接。- Produced API日志不包含您发送的请求的日志条目。
移除构建配置中的依赖项
你可以选择删除构建配置中的依赖项,但这不是必须的。
要移除构建配置中的依赖项,请执行以下操作:
- 备份您的 - pom.xml文件或- build.gradle文件。
- 移除以下依赖项: - endpoints-management-control-appengine
- endpoints-management-control-appengine-all
- endpoints-framework-auth
 
- 清理项目,然后构建 API: - Maven- mvn clean mvn package - Gradle- gradle clean gradle build 
- 重新部署应用 - Maven- mvn appengine:deploy - Gradle- gradle appengineDeploy 
- 测试您的 API 以确保它按预期工作。 
删除托管式服务
Endpoints Frameworks 使用 Google Service Management 来管理您的 API。当您使用 gcloud endpoints services
deploy 命令部署 OpenAPI 文档时,该命令使用 Service Management 为您的 API 创建托管式服务。如果您不需要 Endpoints > 服务页面上的数据和日志查看器页面的 Produced API 日志中的数据,您可以删除 API 的代管式服务,从而从 Google Cloud 控制台中移除该数据。
要删除托管式服务,请执行以下操作:
- 确保 gcloud CLI ( - gcloud) 有权访问您在 Google Cloud上的数据和服务:- gcloud auth login
- 输入以下命令,以显示 Google Cloud项目的项目 ID: - gcloud projects list
- 使用上一步中相应的项目 ID,将默认Google Cloud 项目设置为您的应用所在的项目: - gcloud config set project [YOUR_PROJECT_ID]
- 获取 Google Cloud 项目中所有托管式服务的名称: - gcloud endpoints services list
- 从 Service Management 中删除服务:将 - SERVICE_NAME替换为您要移除的服务的名称。- gcloud endpoints services delete SERVICE_NAME - 运行 - gcloud endpoints services delete不会立即删除托管式服务。Service Management 会将该托管式服务停用 30 天,以便您在需要时对其进行恢复。30 天后,Service Management 将永久删除该托管式服务。
后续步骤
- 如需恢复托管式服务,请参阅恢复托管式服务。 
- 如需了解本页中使用的 - gcloud命令,请参阅- gcloud参考文档。
- 如需了解 Service Management,请参阅创建和删除托管式服务。