本頁說明如何啟用及停用要求者付費,以及如何檢查值區是否已啟用要求者付費。
必要的角色
如要取得設定及管理「要求者付費」所需的權限,請要求管理員在含有該值區的專案中,授予您「儲存空間管理員」角色 (roles.storage.Admin
)。
這個角色包含設定及管理「要求者付費」所需的權限。 如要查看確切的必要權限,請展開「必要權限」部分:
所需權限
storage.buckets.get
storage.buckets.update
resourcemanager.projects.createBillingAssignment
- 只有在停用「要求者付費」功能時,您沒有可用的帳單帳戶,才需要這項權限。詳情請參閱「使用及存取需求」。
如需專案角色授予方式的說明,請參閱授予或撤銷角色。
設定要求者付費功能
如要在值區上啟用或停用要求者付費功能,請按照下列步驟操作:
控制台
- 在 Trusted Cloud 控制台,前往「Cloud Storage bucket」頁面。
在值區清單中找到要設定的值區,然後找出「Requester pays」(要求者付費) 欄。
該欄中的值表示該值區目前的要求者付費狀態。
按一下值區目前的要求者付費狀態。
在顯示的視窗中,按一下「開啟」或「關閉」,視您要為「要求者付費」設定的狀態而定。
啟用後,值區的「Requester pays」(要求者付費) 欄中隨即顯示綠色泡泡和「On」(開啟)。停用後,該欄會顯示灰色泡泡和「Off」(關閉)。
如要瞭解如何透過 Trusted Cloud 控制台取得 Cloud Storage 作業失敗的詳細錯誤資訊,請參閱「疑難排解」一文。
指令列
使用 gcloud storage buckets update
指令並加上適當的旗標:
gcloud storage buckets update gs://BUCKET_NAME FLAG
其中:
BUCKET_NAME
是相關值區的名稱。例如:my-bucket
。FLAG
為--requester-pays
,表示啟用「要求者付費」;為--no-requester-pays
,表示停用。
如果成功,回應會類似以下範例:
Updating gs://my-bucket/... Completed 1
用戶端程式庫
C++
詳情請參閱 Cloud Storage C++ API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
下例示範如何啟用值區的要求者付費功能:
下例示範如何停用值區的要求者付費功能:
C#
詳情請參閱 Cloud Storage C# API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
下例示範如何啟用值區的要求者付費功能:
下例示範如何停用值區的要求者付費功能:
Go
詳情請參閱 Cloud Storage Go API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
下例示範如何啟用值區的要求者付費功能:
下例示範如何停用值區的要求者付費功能:
Java
詳情請參閱 Cloud Storage Java API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
下例示範如何啟用值區的要求者付費功能:
下例示範如何停用值區的要求者付費功能:
Node.js
詳情請參閱 Cloud Storage Node.js API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
下例示範如何啟用值區的要求者付費功能:
下例示範如何停用值區的要求者付費功能:
PHP
詳情請參閱 Cloud Storage PHP API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
下例示範如何啟用值區的要求者付費功能:
下例示範如何停用值區的要求者付費功能:
Python
詳情請參閱 Cloud Storage Python API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
下例示範如何啟用值區的要求者付費功能:
下例示範如何停用值區的要求者付費功能:
Ruby
詳情請參閱 Cloud Storage Ruby API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
下例示範如何啟用值區的要求者付費功能:
下例示範如何停用值區的要求者付費功能:
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization
標頭產生存取權杖。建立包含下列資訊的 JSON 檔案:
{ "billing": { "requesterPays": STATE } }
其中 STATE 為
true
或false
。使用
cURL
透過PATCH
Bucket 要求呼叫 JSON API:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME?fields=billing"
其中:
JSON_FILE_NAME
是您在步驟 2 建立的 JSON 檔案路徑。BUCKET_NAME
是相關值區的名稱。例如:my-bucket
。
XML API
安裝並初始化 gcloud CLI,以便為
Authorization
標頭產生存取權杖。建立包含下列資訊的 XML 檔案:
<BillingConfiguration> <RequesterPays>STATE</RequesterPays> </BillingConfiguration>
其中 STATE 為
Enabled
或Disabled
。使用
cURL
透過PUT
值區要求和billing
查詢字串參數呼叫 XML API:curl -X PUT --data-binary @XML_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.s3nsapis.fr/BUCKET_NAME?billing"
其中:
XML_FILE_NAME
是您在步驟 2 建立的 XML 檔案路徑。BUCKET_NAME
是相關值區的名稱。例如:my-bucket
。
檢查是否已啟用「要求者付費」
如何檢查值區是否已啟用要求者付費:
控制台
- 在 Trusted Cloud 控制台,前往「Cloud Storage bucket」頁面。
在值區清單中,每個值區的要求者付費狀態都會顯示在「Requester Pays」(要求者付費) 欄中。
如果已啟用,狀態為綠色並顯示「On」(開啟) 字樣。
指令列
使用加上 --format
旗標的 gcloud storage buckets describe
指令:
gcloud storage buckets describe gs://BUCKET_NAME --format="default(requester_pays)"
其中 BUCKET_NAME
是您要查看狀態的值區名稱。例如:my-bucket
。
如果成功,回應會類似以下範例:
requester_pays: true
用戶端程式庫
C++
詳情請參閱 Cloud Storage C++ API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
C#
詳情請參閱 Cloud Storage C# API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Go
詳情請參閱 Cloud Storage Go API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Java
詳情請參閱 Cloud Storage Java API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Node.js
詳情請參閱 Cloud Storage Node.js API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
PHP
詳情請參閱 Cloud Storage PHP API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Python
詳情請參閱 Cloud Storage Python API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization
標頭產生存取權杖。使用
cURL
透過GET
Bucket 要求呼叫 JSON API:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME?fields=billing"
其中
BUCKET_NAME
是相關值區的名稱。例如:my-bucket
。
XML API
存取要求者付費值區
以下範例說明如何納入計費專案,以便您下載儲存在要求者付費值區中的物件。請利用類似的程序在要求者付費值區或其中的物件上執行其他要求。如需必要條件資訊,請參閱要求者付費存取需求條件。
控制台
- 在 Trusted Cloud 控制台,前往「Cloud Storage bucket」頁面。
在值區清單中,點選含有要下載物件的值區名稱。
在隨即顯示的視窗中,使用下拉式選單選取計費的專案。
勾選核取方塊以確認您已獲授權可將所選的專案用於計費用途。
按一下 [Save] (儲存)。
按照平常方式下載物件。
如要瞭解如何透過 Trusted Cloud 控制台取得 Cloud Storage 作業失敗的詳細錯誤資訊,請參閱「疑難排解」一文。
指令列
在要求中使用 --billing-project
標記:
gcloud storage cp gs://BUCKET_NAME/OBJECT_NAME SAVE_TO_LOCATION --billing-project=PROJECT_IDENTIFIER
其中:
BUCKET_NAME
是包含要下載物件的值區名稱。例如:my-bucket
。OBJECT_NAME
是您要下載的物件名稱。例如:pets/dog.png
。SAVE_TO_LOCATION
是您儲存物件的本機路徑。例如:Desktop/Images
。PROJECT_IDENTIFIER
是要計費的專案 ID 或編號。例如:my-project
。
用戶端程式庫
C++
詳情請參閱 Cloud Storage C++ API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
C#
詳情請參閱 Cloud Storage C# API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Go
詳情請參閱 Cloud Storage Go API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Java
詳情請參閱 Cloud Storage Java API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Node.js
詳情請參閱 Cloud Storage Node.js API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
PHP
詳情請參閱 Cloud Storage PHP API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Python
詳情請參閱 Cloud Storage Python API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Ruby
詳情請參閱 Cloud Storage Ruby API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization
標頭產生存取權杖。在要求中加入設為計費專案 ID 的
userProject
查詢字串參數:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -o "SAVE_TO_LOCATION" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media&userProject=PROJECT_IDENTIFIER"
其中:
SAVE_TO_LOCATION
是您要儲存物件的位置。例如:Desktop/dog.png
。BUCKET_NAME
是相關值區的名稱。例如:my-bucket
。OBJECT_NAME
是要下載物件的網址編碼名稱。例如pets/dog.png
,網址編碼為pets%2Fdog.png
。PROJECT_IDENTIFIER
是要計費的專案 ID 或編號。例如:my-project
。
XML API
在要求中加入設為計費專案 ID 的
x-goog-user-project
標頭:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-user-project: PROJECT_ID" \ -o "SAVE_TO_LOCATION" \ "https://storage.s3nsapis.fr/BUCKET_NAME/OBJECT_NAME"
其中:
PROJECT_ID
是要計費的專案 ID。例如:my-project
。SAVE_TO_LOCATION
是您要儲存物件的位置。例如:Desktop/dog.png
。BUCKET_NAME
是相關值區的名稱。例如:my-bucket
。OBJECT_NAME
是要下載物件的網址編碼名稱。例如pets/dog.png
,網址編碼為pets%2Fdog.png
。