使用 apigee-access 模組

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

您可以使用 apigee-access 模組,從 Node.js 應用程式程式碼存取 API Proxy 流程變數和快取。這個模組已納入 Apigee Edge 平台,您不需要像其他 Node.js 模組一樣安裝。

取得 apigee-access

apigee-access 模組已整合至 Apigee Edge 平台。將 Node.js 程式碼部署至 Edge 時,您可以使用這個模組。您只需要在部署的任何 Node.js 程式碼中要求該函式庫即可。例如:

var access=require('apigee-access');

存取流程變數

將 Node.js 應用程式部署至 Edge 時,您可以存取任何支援的「隨附」流程變數、由政策建立的流程變數,以及您在 Node.js 程式碼中自行建立的任何流程變數。流程變數是在 Edge 上執行的 API Proxy 環境中建立及存在。詳情請參閱「在 Node.js 中存取流程變數」。

存取快取

apigee-access 模組可讓您透過 Node.js 程式碼存取 Apigee Edge 分散式快取。詳情請參閱「在 Node.js 中存取快取」。

使用配額服務

apigee-access 模組可讓您從 Node.js 程式碼存取 Apigee Edge 配額服務。詳情請參閱在 Node.js 中存取配額服務

存取鍵/值對應

您可以使用 apigee-access 模組,從 Node.js 程式碼存取 Apigee Edge 鍵/值對應 (KVM)。詳情請參閱「在 Node.js 中存取鍵值對應」。

在本機模式與部署模式中執行

為支援本機開發和測試,apigee-access 模組會在本機模式下運作,不依附於 Apigee Edge;不過,當模組與部署至 Edge 的 API Proxy 搭配使用時,「本機」功能會由原生 Edge 功能取代。舉例來說,在部署模式中,您可以存取完整的流程變數,但在本機執行 Node.js 應用程式時,只能使用一小部分變數。如需這些本機模式變數的清單,請參閱「以本機模式執行」。

判斷模組的執行模式

如要判斷 apigee-access 的執行模式,請執行下列指令:

var access = require('apigee-access')
console.log('The deployment mode is ' + access.getMode());

getMode() 的傳回值會指出 Node.js 應用程式是否部署至 Apigee Edge,或是否以獨立模式執行。這個方法會傳回下列其中一個字串結果:

  • apigee - Node.js 應用程式在 Apigee Edge 上執行,且支援所有功能。
  • standalone - Node.js 應用程式在 Apigee Edge 環境外執行,且文件頂端所述的預設功能會生效。

以部署模式執行

部署至 Edge 時,政策設定的變數會對 apigee-access 可見,而這個模組方法新增或修改的變數,則會對 Proxy 流程中的後續政策可見。

如要查看支援的變數連結,請參閱「變數參考資料」。這些變數和您以自己的名稱建立的變數,都會顯示在 apigee-access 中。注意: 部分變數為唯讀。這些變數會列在「變數參考資料」中。

以本機模式執行

在「本機模式」中,您會在 Apigee Edge 環境以外執行 Node.js 程式碼。在這個模式中,您無法在 Node.js 程式碼中存取大部分預先定義的流程變數。下表顯示一小部分可用的流程變數。這裡支援這些變數,以便支援 Apigee Edge 的 Node.js 應用程式本機開發和測試。

變數 唯讀 類型 附註
client.received.start.time 字串 收到要求的時間
client.received.end.time 字串 收到要求的時間
client.received.start.timestamp 整數 收到要求的時間
client.received.end.timestamp 整數 收到要求的時間

再次提醒,Apigee Edge 平台支援的預先定義變數多得多。如需完整清單,請參閱 Apigee Edge 變數參考資料