Google APIs Explorer 會動態產生程式碼範例。這些程式碼範例可供複製並在本機執行。如要查看範例,請點選 APIs Explorer 側邊面板中的「全螢幕」圖示 。下圖顯示展開的全螢幕 API Explorer:
根據預設,APIs Explorer 會顯示如何使用 cURL 執行要求。部分 API 也可能會顯示其他語言的範例,例如 JavaScript、Java 和 Python。
在本機執行程式碼範例
下列分頁說明執行程式碼範例的必要條件和步驟。 如要執行程式碼範例,您必須產生並使用自己的授權憑證。如要瞭解如何建立專案及產生憑證,請參閱特定 Google API 的說明文件。
視方法存取的資料類型 (公開或私密) 而定,憑證可以是下列其中一種:
- 如果是公開資料,憑證就是 API 金鑰。
如果是私人資料,憑證可以是包含 OAuth 2.0 用戶端 ID 和用戶端密鑰的
client_secret.json檔案,也可以是 OAuth 2.0 存取權杖。
cURL
設定
- 請按照 API 說明文件中的操作說明,為應用程式建立或選取專案,然後啟用 API。
- 在 Cloud 控制台中建立 API 金鑰。
- 在 Cloud 控制台中,為網頁應用程式建立 OAuth 用戶端 ID 憑證,並使用
https://developers.google.com/oauthplayground做為重新導向 URI。 - 在 OAuth 2.0 Playground 中,按一下「OAuth 2.0 設定」圖示 。
- 勾選「使用自己的憑證」。
- 輸入步驟 3 中產生的用戶端 ID 和用戶端密鑰。
- 在範圍欄位中,輸入要搭配方法使用的範圍,然後按一下「授權 API」。
- (選用) 如果系統顯示登入畫面,請選取要使用的帳戶。
- (選用) 如果出現授權畫面,請按一下「接受」。
- 這時請按一下「Exchange authorization code for tokens」。系統會傳回權杖。
- 在 cURL 程式碼範例中,將
[YOUR_API_KEY]替換為步驟 2 中產生的 API 金鑰:'https://www.googleapis.com/drive/v3/files?key=[YOUR_API_KEY]' \ - 在 cURL 程式碼範例中,將
[YOUR_ACCESS_TOKEN]換成步驟 10 中產生的存取權杖:--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
執行程式碼範例
在指令列中執行 cURL 指令。指令應類似於下列內容:
curl \
'https://www.googleapis.com/drive/v3/files?key=AIzaSyBiKcaoXmVApwnT24hitQG_dwjGvAj6Ddw' \
--header 'Authorization: Bearer ya29.a0ARrdaM_yQn9MWBpJgKPx880BSnRYIizRYIDz0JN9e66nSliIYpqNXmPsvv2ccfplCTG_U4b1' \
--header 'Accept: application/json' \
--compressed
JavaScript
設定
- 請按照 API 說明文件中的操作說明,為應用程式建立或選取專案,然後啟用 API。
- 在 Cloud 控制台中建立 API 金鑰。
- 在 Cloud 控制台中,為「Web application」(網路應用程式) 建立 OAuth 用戶端 ID 憑證,並設定已授權的 JavaScript 來源,以識別您傳送要求的網址,例如
http://localhost。 - 將完整程式碼範例複製到網路伺服器可存取的本機檔案,例如
/var/www/html/example.html。 在程式碼範例中找出設定 API 金鑰或用戶端 ID 的行,然後將值替換為步驟 2 和 3 中產生的值:
- API 金鑰:
gapi.client.setApiKey(YOUR_API_KEY); - OAuth 2.0 用戶端 ID:
gapi.client.init({ 'clientId': 'YOUR_CLIENT_ID',
- API 金鑰:
執行程式碼範例
- 在瀏覽器中開啟檔案,例如
http://localhost/example.html。建議使用具備偵錯控制台的瀏覽器,例如 Google Chrome。 - (選用) 如果系統顯示登入畫面,請選取要使用的帳戶。
- (選用) 如果出現授權畫面,請按一下「接受」。偵錯控制台應會將方法回應顯示為 JSON 物件。
Java
必要條件
- Java 1.7 以上版本。
- Gradle 7 以上版本。
設定
- 請按照 API 說明文件中的操作說明,為應用程式建立或選取專案,然後啟用 API。
- 視方法存取的資料類型而定,建立 API 金鑰 (公開資料) 或 OAuth 2.0 用戶端 ID (私人資料)。
- 將應用程式類型設為「電腦版應用程式」。
- 如果您已建立 OAuth 2.0 用戶端 ID,請下載包含 OAuth 2.0 憑證的 JSON 檔案。這個檔案的名稱類似於
client_secret_CLIENTID.json,其中CLIENTID是專案的用戶端 ID。 在工作目錄中執行下列指令,建立新的專案結構:
$ gradle init --type basic $ mkdir -p src/main/java src/main/resources如果您在步驟 2 中建立了 OAuth 2.0 用戶端 ID,請將下載的 JSON 檔案重新命名為
client_secret.json。將重新命名的檔案儲存在步驟 5 建立的
src/main/resources目錄中。在工作目錄中開啟
build.gradle檔案,並將內容替換為下列程式碼:apply plugin: 'java' apply plugin: 'application' mainClassName = 'ApiExample' sourceCompatibility = 1.7 targetCompatibility = 1.7 version = '1.0' repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.23.0' compile 'com.google.oauth-client:google-oauth-client-jetty:1.23.0' API_SPECIFIC_DEPENDENCY }在
build.gradle檔案中,將API_SPECIFIC_DEPENDENCY這一行替換為編譯所呼叫 API 程式碼的指令。以下是 YouTube Analytics API 的範例:compile 'com.google.apis:google-api-services-youtubeAnalytics:v2-rev16-1.23.0'指令會遵循下列範本:
compile 'com.google.apis:google-api-services-API_NAME:API_VERSION- revREVISION-CL_VERSION'
其中:
API_NAME是 GitHub 上列出的 API 名稱。如要找出名稱,請在「支援的 Google API」頁面中,按一下 API 旁邊的版本連結。版本連結會導向 GitHub。API 名稱位於頁面正上方,前面會加上googleapis/google-apis-services-。舉例來說,如果是 Drive API 的 v3,API_NAME為drive。API_VERSION是「支援的 Google API」頁面上,API 名稱下方列出的 API 版本。REVISION是 API 的 JavaDoc 參考資料中列出的修訂版本號碼。如需 JavaDoc 參考資料,請前往https://googleapis.dev/java/google-api-services-API_NAME/latest/index.htmlCL_VERSION是用戶端程式庫版本。這個值也會顯示在 JavaDoc 參照中。- 從工作目錄中,將 APIs Explorer 的程式碼範例複製到
src/main/java/ApiExample.java。(每個範例中的類別名稱都是ApiExample,因此您不需要修改build.gradle檔案即可執行不同範例。
執行程式碼範例
使用下列指令執行範例:
gradle -q run
範例應會執行 API 要求,並將回應列印至 STDOUT。您也可以檢查呼叫的服務,瞭解寫入資料的要求所造成的影響。
Node.js
必要條件
- Node.js
適用於 Node.js 的 Google API 用戶端程式庫:
- 如果先前未安裝用戶端程式庫,請執行下列指令:
npm install googleapis --save- 如果您先前已安裝用戶端程式庫,建議更新程式庫,確保您擁有最新類別,如要更新用戶端程式庫,請執行下列指令:
npm update googleapis --save
設定
- 請按照 API 說明文件中的操作說明,為應用程式建立或選取專案,然後啟用 API。
- 視方法存取的資料類型而定,建立 API 金鑰 (公開資料) 或 OAuth 2.0 用戶端 ID (私人資料)。
- 將應用程式類型設為「電腦版應用程式」。
- 如果您已建立 OAuth 2.0 用戶端 ID,請下載包含 OAuth 2.0 憑證的 JSON 檔案。這個檔案的名稱類似於
client_secret_CLIENTID.json,其中CLIENTID是專案的用戶端 ID。 - 將程式碼範例複製到本機檔案,並修改範例,正確識別 API 金鑰或 Secrets 檔案。在範例中,API 金鑰值為
YOUR_API_KEY,Secrets 檔案位置為YOUR_CLIENT_SECRET_FILE.json。
執行程式碼範例
使用下列指令執行範例:
node sample.js
大多數範例都會將 API 回應 (或其他內容) 列印到 STDOUT。
PHP
必要條件
- PHP 5.4 以上版本,並具備指令列介面 (CLI) 和 JSON 擴充功能。
- Composer 依附元件管理工具已在全域安裝。
PHP 適用的 Google API 用戶端程式庫:
如果先前未安裝用戶端程式庫,請執行下列指令:
composer require google/apiclient:^2.0如果您先前已安裝用戶端程式庫,建議更新程式庫,確保您測試的程式庫類別是最新版本。如要更新用戶端程式庫,請執行下列指令:
composer update google/apiclient --with-dependencies
執行程式碼範例
使用下列指令執行範例:
php sample.php
大多數範例都會將 API 回應 (或其他內容) 列印到 STDOUT。
Python
必要條件
- Python 2.7 或 Python 3.5 以上版本
- pip 套件管理工具
適用於 Python 的 Google API 用戶端程式庫:
pip install --upgrade google-api-python-client使用者授權的
google-auth-oauthlib和google-auth-httplib2程式庫:pip install --upgrade google-auth-oauthlib google-auth-httplib2
設定
- 請按照 API 說明文件中的操作說明,為應用程式建立或選取專案,然後啟用 API。
- 視方法存取的資料類型而定,建立 API 金鑰 (公開資料) 或 OAuth 2.0 用戶端 ID (私人資料)。
- 將應用程式類型設為「電腦版應用程式」。
- 如果您已建立 OAuth 2.0 用戶端 ID,請下載包含 OAuth 2.0 憑證的 JSON 檔案。這個檔案的名稱類似於
client_secret_CLIENTID.json,其中CLIENTID是專案的用戶端 ID。 - 將程式碼範例複製到本機檔案,並修改範例,正確識別 API 金鑰或 Secrets 檔案。在範例中,API 金鑰值為
YOUR_API_KEY,Secrets 檔案位置為YOUR_CLIENT_SECRET_FILE.json。
執行程式碼範例
使用下列指令執行範例:
python sample.py
大多數範例都會將 API 回應 (或其他內容) 列印到 STDOUT。
Ruby
必要條件
- Ruby 2.0 以上版本
Ruby 適用的 Google API 用戶端程式庫:
gem install google-api-client`
設定
- 請按照 API 說明文件中的操作說明,為應用程式建立或選取專案,然後啟用 API。
- 視方法存取的資料類型而定,建立 API 金鑰 (公開資料) 或 OAuth 2.0 用戶端 ID (私人資料)。
- 將應用程式類型設為「電腦版應用程式」。
- 如果您已建立 OAuth 2.0 用戶端 ID,請下載包含 OAuth 2.0 憑證的 JSON 檔案。這個檔案的名稱類似於
client_secret_CLIENTID.json,其中CLIENTID是專案的用戶端 ID。 - 將程式碼範例複製到本機檔案,並修改範例,正確識別 API 金鑰或 Secrets 檔案。在範例中,API 金鑰值為
YOUR_API_KEY,Secrets 檔案位置為YOUR_CLIENT_SECRET_FILE.json。
執行程式碼範例
使用下列指令執行範例:
ruby sample.rb
大多數範例都會將 API 回應 (或其他內容) 列印到 STDOUT。
排解範例問題
未顯示授權對話方塊
APIs Explorer 會使用彈出式視窗授予私人資料的存取權。如果瀏覽器封鎖彈出式視窗,系統就不會顯示這個視窗,您也無法授予存取權。
如果在授權畫面中按一下「允許」後沒有任何反應,請嘗試變更瀏覽器的彈出式視窗設定,啟用彈出式視窗。
收到 401 或 403 錯誤
如果在測試範例時收到 401 或 403 錯誤,可能是下列其中一項發生問題:
- 專案未啟用 API。請參閱 API 的操作說明,瞭解如何建立專案及啟用 API。
- 您使用的授權類型有誤 (使用 API 金鑰而非 OAuth 2.0)。
- 您使用 OAuth 2.0,但範圍過於狹窄。
- 設定 API 金鑰時,請一併設定限制,防止未經授權使用您的憑證。不過,該要求不符合這些限制。詳情請參閱「使用 API 金鑰限制」。
收到有關複合型內容的警告
如果您使用 Google Cloud Endpoints,並在開發伺服器中執行端點,瀏覽器可能會顯示混合內容警告。發生這項警告的原因是 API Explorer 是透過 HTTPS 載入,但您的 API 在本機執行時,是透過 HTTP 代管。
如要使用 Chrome 隱藏這項警告,請使用特殊標記啟動 Chrome 工作階段,如下所示:
path/to/chrome --user-data-dir=test --unsafely-treat-insecure-origin-as-secure=http://localhost:port
例如:
/usr/bin/google-chrome-stable --user-data-dir=test --unsafely-treat-insecure-origin-as-secure=http://localhost:8080
您只應基於本機測試目的隱藏這則警告。
僅限 JavaScript:未定義 gapi
如果 JavaScript 程式碼在載入 Google API Client Library for JavaScript 前嘗試呼叫該程式庫,就會發生「gapi is not defined」錯誤。請確保在用戶端程式庫載入完成前,不會呼叫參照 gapi 變數的程式碼。