Kar*_*ova 6 google-cloud-storage google-cloud-endpoints
我正在尝试使用他们的 JSON API 通过多部分请求将图像发布到谷歌云存储,但我收到一个错误:
“代码”:400,“消息”:“存储桶是请求者支付存储桶,但没有提供用户项目。”
这是我的要求:
POST /upload/storage/v1/b<my_bucket_here>/o?
uploadType=multipart&name=testPostman HTTP/1.1
Host: www.googleapis.com
Content-Length: 2139
Authorization: Bearer ya29.<my_token_here>
Cache-Control: no-cache
Postman-Token: 6fb40df7-3a0d-fda6-a94e-63365f594c9d
Content-Type: multipart/form-data; boundary=----
WebKitFormBoundary7MA4YWxkTrZu0gW
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="data"; filename="profilephotos-
960x640.jpg"
Content-Type: image/jpeg
Run Code Online (Sandbox Code Playgroud)
我尝试去我的存储桶,并在那里指定了项目。唯一看起来奇怪的是Lifecycle部分,它是None,当我点击更改它时,它打开一个页面Failed to open。这太奇怪了。
可能是因为我不是项目的所有者,而是项目的管理员?已为存储桶启用计费。请帮忙!为此已经花了 3 天时间。
Google Cloud Storage 的“请求者付费”功能允许存储桶的所有者支付存储对象的费用,但存储桶的用户支付使用存储桶的费用。
启用请求者付款后,每个请求都需要指定要为该请求计费的项目。该唯一的例外是:
resourcemanager.projects.createBillingAssignment存储桶项目的权限。否则,您需要通过包含 URL 参数来明确指定要计费的项目userProject=myProjectId。因此,在您的情况下,对您正在调用的 URL 进行此更改:
POST /upload/storage/v1/b/o? userProject=YOUR-PROJECT &uploadType=multipart&name=testPostman
| 归档时间: |
|
| 查看次数: |
6381 次 |
| 最近记录: |