Service Usage API v1与v1beta1服务列表查询及Python SDK使用疑问
Service Usage API v1与v1beta1版本相关问题解答
Google Cloud的Service Usage API(serviceusage.googleapis.com)存在v1和v1beta1两个版本,两者核心差异如下:
- v1版本:提供
services.list方法,可列出项目内所有服务,调用示例:
但该版本不包含服务配额相关操作方法。serviceusage.googleapis.com/v1/projects/PROJECT_ID/services?filter=state:ENABLED - v1beta1版本:涵盖服务配额限制(Service Quota Limits)相关方法,但其中的
services.list、services.get、services.batchEnable方法已被官方标记为弃用,且services.batchEnable明确要求改用v1版本的对应方法。
问题1:v1beta1版本里有没有非弃用的服务列表查询方法?
没有。v1beta1中所有用于查询服务列表的方法(services.list、services.get)均已被弃用,不存在其他非弃用的替代方法。如果需要查询服务列表,官方推荐直接使用v1版本的services.list方法。
问题2:使用Python SDK配置v1beta1版本时,能否安全继续使用v1版本的services.list方法?
完全可以放心使用,原因如下:
- v1版本的
services.list是官方支持的稳定方法,无弃用风险,功能完整可靠。 - Python SDK可同时创建多个不同版本的API客户端实例,你可以分别初始化v1客户端处理服务列表查询,v1beta1客户端处理配额相关操作:
# 初始化v1版本客户端,用于服务列表查询 service_usage_v1 = discovery.build('serviceusage', 'v1', credentials=credentials, cache_discovery=False) # 初始化v1beta1版本客户端,用于配额操作 service_usage_v1beta1 = discovery.build('serviceusage', 'v1beta1', credentials=credentials, cache_discovery=False) - 两个版本的客户端互相独立,不会产生冲突,各自处理对应API操作即可。
内容的提问来源于stack exchange,提问作者intotecho
相关产品推荐
相关产品推荐

