Google APIs Explorer 會動態產生程式碼範例。這些程式碼範例可在本機複製及執行。如要查看範例,請按一下 APIs Explorer 側邊面板中的「全螢幕」圖示
。下圖顯示展開的完整版 API Explorer:
根據預設,API Explorer 會顯示如何使用 cURL 執行要求。部分 API 也可能會顯示其他語言的範例,例如 JavaScript、Java 和 Python。
在本機執行程式碼範例
下列分頁說明執行程式碼範例的先決條件和步驟。如要執行程式碼範例,您必須產生並使用自己的授權憑證。如要瞭解如何建立專案及產生憑證,請參閱特定 Google API 的說明文件。
憑證會視方法存取的資料類型 (公開或私密) 而定,如下所示:
- 如果是公開資料,憑證就是 API 金鑰。
私人資料的憑證是包含 OAuth 2.0 用戶端 ID 和用戶端密碼的
client_secret.json
檔案,或是 OAuth 2.0 存取權憑證。
cURL
設定
- 請按照 API 說明文件中的操作說明,為應用程式建立或選取專案,並啟用 API。
- 在 Cloud 控制台中建立 API 金鑰。
- 在雲端控制台中,為網頁應用程式建立 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 金鑰。
- 在雲端控制台中,為「網頁應用程式」建立 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 參考資料中列出的修訂版本編號。您可以在https://googleapis.dev/java/google-api-services-API_NAME/latest/index.html
中找到 JavaDoc 參考資料CL_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 金鑰或用戶端密鑰檔案。在範例中,API 金鑰值為
YOUR_API_KEY
,用戶端密鑰檔案位置為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 金鑰或用戶端密鑰檔案。在範例中,API 金鑰值為
YOUR_API_KEY
,用戶端密鑰檔案位置為YOUR_CLIENT_SECRET_FILE.json
。
執行程式碼範例
請使用下列指令執行範例:
python sample.py
大多數範例會將 API 回應 (或其他內容) 列印到 STDOUT
。
小茹
必要條件
- 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 金鑰或用戶端密鑰檔案。在範例中,API 金鑰值為
YOUR_API_KEY
,用戶端密鑰檔案位置為YOUR_CLIENT_SECRET_FILE.json
。
執行程式碼範例
請使用下列指令執行範例:
ruby sample.rb
大多數範例會將 API 回應 (或其他內容) 列印到 STDOUT
。
排解範例問題
授權對話方塊未顯示
API 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
變數的程式碼。