0

我正在尝试使用 python 3.6 为谷歌云项目获取 billingInfo 我已经完成了对计费 API 的请求,但没有预期响应,因为 Google 的Billing Api文档说它返回名称、项目 ID、计费帐户名称和计费启用。但即使对于不与计费帐户关联的项目,它也只会返回名称和项目 ID。这是我的代码:

            projectName = form.cleaned_data['project_id']
            # Get billing Info of selected project
            auth = getauth()
            service = discovery.build('cloudbilling', 'v1', http=auth, cache_discovery=False)
            name = 'projects/' + projectName
            billing_request = service.projects().getBillingInfo(name=name,)
            billing_response = billing_request.execute()
            data = billing_response
            print(json.dumps(data))
            if data['name']:
                return HttpResponse(json.dumps(data), content_type='application/json')
            else:
                data = []
                return HttpResponse(json.dumps(data), content_type='application/json')

并将响应返回为:

{"name": "projects/docker-184805/billingInfo", "projectId": "docker-184805"}

甚至没有为此项目启用计费。

如何使用 API python 客户端在谷歌云平台上获取项目的正确计费信息?

请帮帮我!

提前致谢!

4

1 回答 1

0

我在一个没有启用计费(没有关联的计费帐户)的项目中运行了您的代码,我收到了与您相同的响应,只有nameprojectId。然后,我在一个启用了计费的项目中运行它,我收到了您指出的文档所暗示的响应。

但即使对于不与计费帐户关联的项目,它也只会返回名称和项目 ID。

只需为您的项目启用计费,您将收到正确的计费信息,带有nameprojectId和。billingAccountNamebillingEnabled

于 2017-11-06T11:10:20.453 回答