google存储错误:Bucket是请求者支付的Bucket,但没有提供用户项目



我想使用"file.json"下载文件它包含了所有的url。在这里,我试图在Python中使用这些代码,但是我得到这个错误:

"code":400,"message":"Bucket is requester pays bucket but no user project provided"

当我创建GCP帐户时,我已经设置了我的账单详细信息。我真的不知道如何解决它。我不是这桶的主人。我有权限从桶中获取数据。Python代码:

import os
from google.cloud.bigquery.client import Client
os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = 'path/to/key.json'
bq_client = Client()

import json
from google.cloud import storage
client = storage.Client(project='my_projectID')
bucket = client.get_bucket('the_bucket')
file_json = bucket.get_blob('file.json')
data = json.loads(file_json.download_as_string())

您需要在请求中提供user_project,这是一个您拥有计费权限的gcp项目。这些请求将被分配到该项目。

您可以在这里找到python代码示例:https://cloud.google.com/storage/docs/using-requester-pays#using

bucket = storage_client.bucket(bucket_name, user_project=project_id)

在这里查看您在user_project中需要哪些权限:https://cloud.google.com/storage/docs/requester-pays#requirements

serviceusage.services.use

相关内容

  • 没有找到相关文章

最新更新