範例清單

您目前查看的是 Apigee Edge 說明文件。
前往 Apigee X 說明文件
info

Apigee Edge API 範例包含範例 API Proxy、政策、程式碼和工具,可說明下列 Apigee Edge API 服務的功能。

如需使用範例的操作說明,請參閱「使用範例 API Proxy」。

邊做邊學

想快速動手操作,並開始建立 Apigee Edge 的紮實知識基礎嗎?我們在 GitHub 中提供「learn-edge」範例程式庫,讓您快速部署、叫用及追蹤一些範例 Proxy,從最簡單的 Proxy 開始,逐步瞭解如何使用 Proxy 說明 API 金鑰驗證、配額、回應快取、錯誤處理等功能。

複製存放區並設定環境後 (只需幾分鐘),您可以在不到一分鐘的時間內試用每個範例。此外,由於每個樣本都會建立相同 Proxy 的新修訂版本,因此環境不會因大量樣本而變得雜亂。您可以隨時切換修訂版本、在管理 UI 中重新部署其他修訂版本,以及查看 Proxy 程式碼。每個範例的讀我檔案也會簡要說明範例的用途和設定方式。

歡迎試試看!https://github.com/apigee/api-platform-samples/tree/master/learn-edge

文件教戰手冊範例

我們為 API 代理食譜主題提供了一組範例。

名稱 說明 政策類型 資源
javascript-cookbook 這個範例會示範簡單的 JavaScript 程式碼片段,可從變數新增 HTTP 標頭、將 JSON 格式的天氣報告轉換為 XML,以及為行動用戶端縮減內容。

Javascript
XMLToJSON

minimize.js
setHeaders.js
javascript-mashup-cookbook 完整的 JavaScript 應用程式,可呼叫公開 API、合併結果,並為用戶端應用程式產生經過擴充的回應。(注意:這個 API Proxy 實作的功能與 policy-mashup 相同,可證明使用不同技術也能解決相同問題)。 JavaScript MashItUp.js
java-hello 簡單的 Hello World Java 呼叫。 JavaCallout JavaHello.java
java-cookbook 將回應內容和標頭轉換為大寫。 JavaCallout
ResponseUppercase.java
java-properties 示範如何在 Java 呼叫中使用屬性。 JavaCallout JavaProperties.java
java-error 示範可在 Java Callout 程式碼中使用的錯誤處理模式。 JavaCallout JavaError.java
policy-mashup-cookbook 完整的應用程式,使用政策組合呼叫兩個公開 API、合併結果,並為用戶端應用程式產生經過擴充的回應。(注意:這個 API Proxy 實作的功能與 javascript-mashup 相同,可證明使用不同技術也能解決相同問題)。 AssignMessage
ServiceCallout
ExtractVariables
Javascript
XMLToJSON
GenerateResponse.js

API Proxy 範例

下列 API Proxy 位於 GitHub,其中的 Readme 頁面提供範例的詳細說明。如要瞭解特定政策在範例中的運作方式,請在下方的「政策類型」欄中尋找您感興趣的政策,然後點選「名稱」欄中的範例名稱。(政策會連結至文件中的相應參考頁面)。

參考資料和工具

除了上述表格中的文件食譜範例和範例 Proxy 之外,Edge GitHub 範例也包含下列資源:

名稱 說明 政策類型 資源
regex-protection 規則運算式威脅防護政策可保護後端 API 和微服務,防範 SQL 植入攻擊。

規則運算式保護

不適用
oauth-validate-key-secret 您正在實作 OAuth 密碼授權類型流程。您必須先在 Edge 上驗證應用程式用戶端金鑰和密碼,才能呼叫外部身分識別提供者來驗證使用者的憑證。 OAuthV2 不適用
condition-pattern-matching 這個 Proxy 可讓您輕鬆試用及測試 API Proxy 流程中的條件陳述式。 AssignMessage 不適用
access-entity 說明如何從 Apigee Edge 資料存放區擷取實體的設定檔。 AssignMessage
AccessEntity
ExtractVariables
apikey 實作簡單的 API 金鑰驗證 VerifyAPIKey
AssignMessage
Quota
async-callout 示範如何使用 JavaScript httpClient 進行簡單的非同步回呼。 JavaScript assemble_response.js
callout.js
base64encoder 示範如何從 API Proxy 中的 JavaScript 資源呼叫 JavaScript 包含項目。 AssignMessage
Javascript
core-min.js
enc-utf16-min.js
enc-base64-min.js
encodeAuthHeader.js
conditional-policy 實作簡單的條件政策強制執行。如果要求包含 HTTP 標頭 responsetime:true,政策會執行 Python 指令碼,將一組效能指標新增至回應訊息 (以 HTTP 標頭的形式) 指令碼 (Python) timer.py
dynamic-endpoint 在稍微複雜的情境中實作簡單的條件式路徑,定義兩個網址和一個預設路徑。
jira-release-notes Apigee 文件團隊會使用這個 API Proxy,從 Jira 產生版本資訊。 JSONToXML
XSL
releasenotes_api.xsl
kerberos-credential-mediation 本範例說明如何在 Apigee Edge 上執行 Kerberos 憑證中介服務。 JavaCallout Java JAR 檔案
oauth-advanced 授權碼授權類型流程的完整運作範例,授權伺服器為 Apigee Edge。

GenerateAccessToken
GenerateAuthCode
RefreshAccessToken

其他許多裝置...

請參閱範例程式碼
oauth-client-credentials 示範為用戶端憑證授權類型設定的完整 OAuth 2.0 權杖端點。 GenerateAccessToken
oauth-login-app 已淘汰,建議您改用 oauth-advanced 範例。
oauth-validate-key-secret 說明在密碼授權類型流程中,呼叫身分識別資訊提供者來驗證使用者憑證之前,如何驗證用戶端的金鑰和密鑰。 OAuthV2
AssignMessage
ExtractVariables
ServiceCallout
RaiseFault
oauth-verify-accesstoken 示範如何設定 API Proxy,以驗證 OAuth 2.0 存取權杖並驗證配額。 VerifyAccessToken
Quota
oauth10a-3legged 示範 OAuth 1.0a 三向設定。 GenerateAceessToken
GenerateRequestToken
ServiceCallout
VerifyAccessToken
outbound-oauth 使用 Microsoft Azure 翻譯工具 API 翻譯推文。為此,API Proxy 會發出外送呼叫來取得 OAuth 存取權杖,然後使用 API 服務快取政策快取權杖,每次發出外送呼叫時都會重複使用快取的權杖。此外,還包含用於叫用 API Proxy 的示範瀏覽器應用程式。 AssignMessage
LookupCache
PopulateCache
JavaScript
api-config.js
api-token-get.js
translate-query.js
translate-results.js
分頁 根據用戶端提供的限制和偏移參數,將 XML 回應訊息分頁 AssignMessage
ExtractVariables
ResponseCache
VerifyApiKey
XSL
paginate.xslt
response-cache 示範如何在 Edge 上快取天氣預報 10 分鐘。 ResponseCache
AssignMessage
simple-python 示範在回應中附加 Python 指令碼的簡單情境,該指令碼會將標頭值新增至回應。
指令碼 (Python) setHeader.py
soap 示範 XSL 轉換,在收到含有查詢參數 ?wsdl 的要求時,重新編寫 WSDL 檔案。 AssignMessage
ExtractVariables
Script (Python)
XSL
calculateaddress.py
fixwsdl.xsl
串流 示範 HTTP 串流設定。
target-reroute 示範如何使用 JavaScript,根據要求訊息的內容動態選取目標網址。 ExtractVariables
Javascript
rewriteTargetUrl.js
twitter-mobile-timeline 示範如何使用 JavaScript 從推文中移除不必要的參數,進而簡化 Twitter 時間軸,讓資源受限的行動裝置也能順暢瀏覽。 AssignMessage
Javascript
MobileTimeline.js
twitter-oembed 將時間軸回應 (例如來自 statuses/user_timeline.json) 轉換為 oEmbed 回應,其中包含時間軸資料做為豐富的 HTML 內容。 AssignMessage
JavaScript
search-oembed.js
變數 說明如何根據傳輸、JSON 和 XML 訊息內容擷取及設定變數。 AssignMessage
ExtractVariables
XMLToJSON
minimize.js
xmltojson 將 XML 格式的回應資料轉換為 JSON 格式。 XMLToJSON
JSONToXML

/schemas

XML 結構定義檔,可用於設定 API Proxy、政策、API 產品,以及開發人員和應用程式設定檔時做為參考。

/tools

內含部署工具 deploy.py,可將 API Proxy 匯入 Apigee Edge 的機構,然後部署至指定環境。

/org-snapshot

機構快照工具會擷取機構設定,包括開發人員、API 產品、虛擬主機、鍵/值對應等。這項工具可用於備份機構詳細資料,或探索機構中的設定。

Apigee-127

如果您是程式設計師,可以透過 Apigee-127 建立 API Proxy,並使用 Node.js 和 Swagger 進行程式設計。您也可以在 GitHub 上找到 a127 範例:https://github.com/apigee-127/a127-samples

分享經驗

歡迎前往 Apigee 開發人員論壇分享您的體驗。