範例清單

您正在查看 Apigee Edge 說明文件。
前往 Apigee X 說明文件
info

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

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

透過實作學習

想要快速開始使用 Apigee Edge,並建立穩固的知識基礎嗎?我們在 GitHub 中提供「learn-edge」範例的程式庫,可讓您快速部署、叫用及追蹤一些範例 Proxy,從最簡單的 Proxy 開始,再轉移至說明 API 金鑰驗證、配額、回應快取、錯誤處理等的 Proxy。

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

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

說明文件教戰手冊範例

我們提供一組範例,供您參考 API 代理程食譜主題。

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

JavaScript
XMLToJSON

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

範例 API Proxy

下列 API 代理程式位於 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 代理程式中,從 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 文件團隊用來從 Jira 產生發布說明的 API Proxy。 JSONToXML
XSL
releasenotes_api.xsl
Kerberos 憑證仲介 本範例說明如何在 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 代理程式,該代理程式已設定為驗證 OAuth 2.0 存取權杖和驗證配額。 VerifyAccessToken
配額
oauth10a-3legged 示範 OAuth 1.0a 三方設定。 GenerateAceessToken
GenerateRequestToken
ServiceCallout
VerifyAccessToken
outbound-oauth 使用 Microsoft Azure Translator API 翻譯推文。為此,它會發出傳出呼叫來取得 OAuth 存取權杖,然後使用 API 服務快取政策快取權杖,每次傳出呼叫時重複使用快取的權杖。此外,還包含用於叫用 API Proxy 的示範瀏覽器應用程式。 AssignMessage
LookupCache
PopulateCache
JavaScript
api-config.js
api-token-get.js
translate-query.js
translate-results.js
pagination 根據用戶端提供的限制和偏移參數,為 XML 回應訊息分頁 AssignMessage
ExtractVariables
ResponseCache
VerifyApiKey
XSL
paginate.xslt
response-cache 示範如何在 Edge 上快取 10 分鐘的天氣預報。 ResponseCache
AssignMessage
simple-python 示範在
回應中附加 Python 指令碼的簡單情境,該指令碼會為回應新增標頭值。
指令碼 (Python) setHeader.py
肥皂 示範 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

您可以在設定 API 代理程、政策、API 產品,以及開發人員和應用程式設定檔時,將 XML 結構定義檔案用作參考。

/tools

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

/org-snapshot

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

Apigee-127

如果您是程式設計師,Apigee-127 會協助您使用 Node.js 和 Swagger 編寫 API Proxy 程式碼。您也可以在 GitHub 上找到 a127 範例:https://github.com/apigee-127/a127-samples

分享經驗

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