您正在查看 Apigee Edge 說明文件。
前往 Apigee X 說明文件。 info
您可以在 Apigee Edge 上代管 Node.js API,讓 API Proxy 以目標服務的形式呼叫這些 API。
Apigee Edge 上的 Node.js 支援功能可讓您在 Node.js 中為 Proxy 建構自訂的後端服務。基本上,Apigee Edge 會在 Apigee 機構和環境的範圍內,在執行階段環境中代管 Node.js 程式碼。部署至相同組織和環境的 API 代理程式,可以呼叫 Node.js 應用程式公開的以 HTTP 為基礎的 API。
Node.js 部署選項
Apigee 提供兩種代管 Node.js 程式碼的選項:代管目標和傳統 Node.js Edge 部署環境。
部署至託管目標
代管目標可讓 Node.js 應用程式在原生環境中執行,而不需要依賴任何 Apigee 專屬的執行階段技術。它會提供原生節點執行階段,讓您使用喜愛的節點套件。
您可以在部署應用程式前,在本機偵錯及測試應用程式,確保部署版本與本機版本完全相同。在部署期間,您可以選擇任何應用程式執行階段版本,在代管目標中執行應用程式。舉例來說,您可以選擇在 v8.10.0 環境或任何其他版本中執行 Node.js 應用程式。
下圖說明基本架構:
代管目標的執行階段環境範圍為 Apigee 機構和環境,可做為部署至相同機構和環境的任何 API 代理程式目標。
部署至傳統的嵌入式 Node.js 環境
將 Node.js 部署至 Edge 的傳統方法在內部依賴名為 (Trireme) 的開放原始碼橋接應用程式,以及名為 (Rhino) 的 JavaScript 解譯器。這些元件可讓 Node.js 程式碼直接在 Edge Java 執行階段環境中執行。
傳統的內嵌 Node.js 執行階段環境的範圍限定為 Apigee 機構和環境,可做為部署至同一機構和環境的任何 API Proxy 的目標。
透過這種方法,您可以使用名為 apigee-access 的支援模組,從 Node.js 應用程式程式碼中存取 API 代理程式流量變數、快取、鍵值對應項目和配額。
選擇 Node.js 方法
Apigee 建議您考慮使用代管目標。部署至代管目標的 Node.js 應用程式不依賴任何 Apigee 專屬的 Node.js 執行階段技術。Node.js 應用程式會在代管目標中執行,就像在本機開發環境中執行一樣。
此外,Apigee 對傳統 Node.js Edge 部署作業的支援功能有以下限制:
- 僅支援舊版 Node.js (0.10.32)。
- 標準 Node.js 環境和 Trireme/Rhino 環境的行為有微妙差異。
- 將 Node.js 應用程式部署至 Edge 後,很難對其進行偵錯。
目前,代管目標不支援使用 apigee-access 存取 Proxy 執行流程內容中的資源,例如執行流程變數。
如要進一步瞭解傳統的 Edge Node.js 部署作業,請參閱「在 Edge 上部署傳統的 Node.js」。
用途
Edge 上的 Node.js 常見用途包括:
建構高度自訂的以 HTTP 為基礎的獨立 API 和後端服務。
運用可編寫指令碼的目標端點優勢,解決複雜的行動最佳化問題。
建構複合服務和混合內容。
使用 Express 等架構,快速開發新 API 的原型。
下一步
如要決定最適合您的 Node.js 部署方式,請參閱以下概略說明: