本頁面說明如何直接將 Cloud Storage 值區中的物件資料讀取至應用程式記憶體,或在網路瀏覽器或指令列終端機中以互動方式讀取。如要串流、檢查或處理資料,並避免將檔案寫入持續性本機檔案系統時,產生 CPU、磁碟 I/O 和延遲時間的負擔,建議您將物件讀取至記憶體或以互動方式讀取。
如需將物件下載到永久或本機儲存空間的操作說明,請參閱「下載物件」。如需物件讀取和下載的概念總覽,請參閱物件讀取和下載。
必要的角色
如要取得讀取物件資料所需的權限,請要求管理員授予您下列 IAM 角色:
- bucket 的「Storage 物件檢視者」 (
roles/storage.objectViewer) - 儲存空間管理員 (
roles/storage.admin) 專案 (使用 Cloud de Confiance 控制台讀取物件資料時才需要)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
Storage 物件檢視者 (roles/storage.objectViewer) 角色包含 storage.objects.get 權限,這是讀取物件的必要權限。除了 storage.objects.get 權限外,儲存空間管理員 (roles/storage.admin) 角色還具備 storage.buckets.list 和 storage.buckets.get 權限。您必須具備這些權限,才能列出專案中的值區,並查看值區的相關資訊。只有在想使用 Cloud de Confiance 控制台以互動方式讀取物件時,才需要具備這些權限的「Storage 管理員」(roles/storage.admin) 角色。
如需授予 bucket 角色的操作說明,請參閱「在 bucket 上設定及管理 IAM 政策」。
以程式輔助方式將物件讀取到記憶體
本節說明如何將物件位元組直接串流至應用程式記憶體,藉此讀取物件資料。
用戶端程式庫
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。
Rust
以互動方式讀取物件
本節說明如何在Cloud de Confiance 控制台瀏覽器視窗或指令列終端機stdout中,以互動方式讀取物件。
控制台
- 前往 Cloud de Confiance 控制台的「Cloud Storage bucket」頁面。
在 bucket 清單中,點選要查看內容的 bucket 名稱。
在「物件」分頁中,按一下要讀取的物件名稱。
在「物件詳細資料」頁面中,按一下物件的公開網址或已驗證網址,即可讀取資料。
指令列
如要將物件的位元組酬載直接串流至終端機 stdout,請使用 gcloud storage cat 指令:
gcloud storage cat gs://BUCKET_NAME/OBJECT_NAME
更改下列內容:
BUCKET_NAME:包含要讀取物件的 bucket 名稱。例如:my-bucket。OBJECT_NAME:要讀取的物件名稱,例如:dog.png。
REST API
如要讀取物件的位元組,並將輸出串流導向終端機 stdout,請按照下列操作說明進行。
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization標頭產生存取權杖。使用
cURL透過包含-o -選項和alt=media查詢參數的objects.get要求呼叫 JSON API:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -o - \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media"
更改下列內容:
BUCKET_NAME:包含要讀取物件的值區名稱。例如:my-bucket。OBJECT_NAME:您要讀取的物件名稱 (經過網址編碼)。例如pets/dog.png,網址編碼為pets%2Fdog.png。
XML API
安裝並初始化 gcloud CLI,以便為
Authorization標頭產生存取權杖。使用
cURL透過GET物件要求呼叫 XML API:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.s3nsapis.fr/BUCKET_NAME/OBJECT_NAME"
更改下列內容:
BUCKET_NAME:包含要讀取物件的值區名稱。例如:my-bucket。OBJECT_NAME:您要讀取的物件名稱 (經過網址編碼)。例如pets/dog.png,網址編碼為pets%2Fdog.png。