本頁說明您可以用來存取 Cloud Storage 的不同要求端點。Cloud Storage 支援 HTTP/1.1、HTTP/2 和 HTTP/3 通訊協定。端點是 Cloud Storage 的存取位置,以網址形式表示。
一般 API 要求
JSON API
直接向 Cloud Storage 發出 JSON API 要求時,請使用下列端點:
如為物件上傳作業以外的一般 JSON API 要求,請使用下列端點,並將
PATH_TO_RESOURCE
替換為適當的值:https://storage.googleapis.com/storage/v1/PATH_TO_RESOURCE
如是 JSON API 物件上傳作業,請使用下列端點,並將
BUCKET_NAME
替換為適當的值:https://storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o
如是批次要求,請使用下列端點,並將
PATH_TO_RESOURCE
替換為適當的值:https://storage.googleapis.com/batch/storage/v1/PATH_TO_RESOURCE
如要透過 JSON API 下載物件,您可以使用下列端點,並將
BUCKET_NAME
和OBJECT_NAME
替換為適當的值:https://storage.googleapis.com/download/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media
JSON API 端點只接受 HTTPS 要求。
XML API
直接向 Cloud Storage 發出 XML API 要求時,請使用虛擬主機樣式或路徑樣式端點,並將 BUCKET_NAME
和 OBJECT_NAME
替換為適當的值:
虛擬託管型端點:
https://BUCKET_NAME.storage.googleapis.com/OBJECT_NAME
路徑樣式端點:
https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME
XML API 端點支援安全資料傳輸層 (SSL) 加密,因此您可以使用 HTTP 或 HTTPS。我們建議您使用 HTTPS,尤其是使用 OAuth 2.0 向 Cloud Storage 驗證時,更應該使用 HTTPS。
如為透過 Proxy 進行連線,請參閱疑難排解主題來瞭解推薦的做法。
對網址路徑部分進行編碼
除了值區命名和物件命名的一般注意事項外,為確保 Cloud Storage 工具之間的相容性,如果物件名稱或要求網址的查詢字串中出現下列字元,您應進行編碼:
!
、#
、$
、&
、'
、(
、)
、*
、+
、,
、/
、:
、;
、=
、?
、@
、[
、]
和空格字元。
舉例來說,如果您為值區 example-bucket
中名為 foo??bar
的物件傳送 JSON API GET
要求,要求網址應為:
GET https://storage.googleapis.com/storage/v1/b/example-bucket/o/foo%3f%3fbar
請注意,並非所有列出的字元都必須在每個情境中編碼。 此外,編碼通常是由用戶端程式庫 (例如 Cloud Storage 用戶端程式庫) 為您處理,因此使用這類工具時,您可以傳遞原始物件名稱。
如要進一步瞭解如何使用百分比編碼,請參閱 RFC 3986 的第 3.3 節「路徑」。
Google Cloud 控制台端點
使用 Google Cloud 控制台時,您可透過下列網址存取不同資源:
資源 | 網址 |
---|---|
專案的待辦事項清單 | https://console.cloud.google.com/storage/browser?project=PROJECT_ID |
值區的物件清單 | https://console.cloud.google.com/storage/browser/BUCKET_NAME |
物件詳細資料 | https://console.cloud.google.com/storage/browser/_details/BUCKET_NAME/OBJECT_NAME |
物件的資料 | 請參閱「已驗證的瀏覽器下載作業」 |
gcloud endpoints
gcloud storage
指令會使用 JSON API 端點。gcloud CLI 會代您管理端點用量。
用戶端程式庫端點
Cloud Storage 用戶端程式庫會自動管理要求端點。 您可以選擇手動設定要求端點。如果您想使用特定端點或進行測試 (例如使用本機模擬器),這項功能就非常實用:
C++
詳情請參閱 Cloud Storage C++ API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
C#
詳情請參閱 Cloud Storage C# API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
Go
詳情請參閱 Cloud Storage Go API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
Java
詳情請參閱 Cloud Storage Java API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
Node.js
詳情請參閱 Cloud Storage Node.js API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
PHP
詳情請參閱 Cloud Storage PHP API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
Python
詳情請參閱 Cloud Storage Python API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
Ruby
詳情請參閱 Cloud Storage Ruby API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
自訂網域
如果您擁有自己的網域,可以將網域的 URI 對應至一或多個Google Cloud 服務,包括 Cloud Storage 值區。有時會使用「值區繫結主機名稱」一詞來描述這個 Cloud Storage 要求端點。如要將自訂網域連結至 Cloud Storage 值區,請在 DNS 記錄中建立 A
或 CNAME
重新導向。
A
筆記錄
將自訂網域連結至 Cloud Storage 值區時,一般應使用 A
記錄。
A
筆記錄支援HTTPS
要求。A
記錄可用於將來自單一主機名稱的流量傳送至多個值區,以及其他 Google Cloud 服務。A
記錄不會對值區名稱設下任何限制。
使用 A
記錄的缺點是需要額外設定,且會使用額外的 Google Cloud 資源。如要瞭解如何搭配使用自訂網域和 A
記錄,請參閱設定負載平衡器和 SSL 憑證指南。
CNAME
筆記錄
將自訂網域連線至 Cloud Storage bucket 時,您可以使用 CNAME
記錄,但請注意,這麼做有以下限制:
CNAME
記錄僅支援HTTP
要求。CNAME
記錄只能將特定主機名稱的流量導向單一值區。CNAME
記錄的主機名稱和相關聯的 bucket 名稱必須相符,且您必須驗證 bucket 名稱。CNAME
記錄只能用於子網域 (例如www.mydomain.com
),不能用於頂層網域 (例如mydomain.com
)。
使用 CNAME
記錄時,CNAME
記錄的主機名稱部分必須設為下列值:
c.storage.googleapis.com.
舉例來說,假設您的網域為 example.com
,而且您想讓顧客使用旅遊地圖。您可以在 Cloud Storage 中建立名為 travel-maps.example.com
的值區,然後在 DNS 中建立 CNAME
記錄,將要求從 travel-maps.example.com
重新導向至 Cloud Storage URI。如要完成這項操作,請發布下列 DNS 中的 CNAME
記錄:
NAME TYPE DATA travel-maps CNAME c.storage.googleapis.com.
如此一來,您的客戶就可以使用下列網址存取巴黎的地圖:
http://travel-maps.example.com/paris.jpg
您應該可以使用網域註冊服務來管理網域,包括新增 CNAME
資源記錄。舉例來說,如果您使用 Cloud DNS,可以在「新增、修改及刪除記錄」頁面查看新增資源記錄的操作說明。
已驗證的瀏覽器下載作業
經驗證的瀏覽器下載作業會使用 Cookie 型驗證程序。Cookie 型驗證會要求使用者登入使用者帳戶來建立身分。指定的帳戶必須具備下載物件的適當權限。舉例來說,如果您使用 Identity and Access Management 控管物件的存取權,使用者帳戶必須擁有 storage.objects.viewer
權限,而該權限是由 Storage 物件檢視者角色所授予。
如要使用 Cookie 型驗證下載物件,請使用下列網址,並將 BUCKET_NAME
和 OBJECT_NAME
替換為適當的值:
https://storage.cloud.google.com/BUCKET_NAME/OBJECT_NAME
例如,如果從值區 example-maps
分享圖片 london.jpg
,其網址就會是:
https://storage.cloud.google.com/example-maps/london.jpg
成功登入後,系統會將你重新導向至要求的內容。這項內容的網址開頭為英數字元序列,且包含字串 /download/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME
執行經過驗證的瀏覽器下載作業時,必須使用 HTTPS;嘗試以 HTTP 下載將重新導向至 HTTPS。
存取公開物件
所有向 storage.cloud.google.com
URI 發出的要求都需要驗證,即使 allUsers
擁有物件的存取權也是如此。如果您想讓使用者無需經過驗證,即能下載可匿名存取的物件,請使用 XML API 路徑樣式端點:
https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME
如需詳細資訊及範例,請參閱「存取公開資料」。
支援雙向傳輸層安全標準 (TLS)
相互傳輸層安全標準 (mTLS) 是業界標準通訊協定,用於用戶端與伺服器之間的雙向驗證。Cloud Storage 支援下列 mTLS 端點:JSON API 要求:
storage.mtls.googleapis.com
已驗證的瀏覽器下載作業:
storage.mtls.cloud.google.com
後續步驟
- 將檔案上載至 Cloud Storage。
- 從 Cloud Storage 下載檔案。
- 託管靜態網站。
- 瞭解控制您資料存取權有哪些選項。