2016-11-30 68 views
1

我是Datapower網關腳本的新手。在我的腳本中,我嘗試獲取上下文變量的值,如var:// context/WSM/identity/credentials。dW:IBM Datapower網關腳本

我嘗試類似:

session.input.getVariable('var://context/WSM/identity/credentials'); 
session.input.getVar('var://context/WSM/identity/credentials'); 
session.name('WSM'); 

但我送花兒給人有 '未定義' 響應。

我的問題如何從gatewayscript訪問上下文變量?而globaly,這是正確的方式來獲得用戶cr enter code here edentials還是有另一種方式?

謝謝你的幫助。

回答

1

您需要使用會話對象:

var ctx = session.name('WSM') || session.createContext('WSM'); 
var value = ctx.getVar('identity'); 

否則,您可以使用服務元數據對象:

var sm = require('service-metadata'); 
var value = sm.getVar('var://context/WSM/identity/credentials'); 
+0

嗨安德斯,IBM文檔說:使用服務元數據模塊訪問服務變量不是上下文變量! –

+0

嗨安德斯,我有處理錯誤:不正確的服務變量名稱 –

+0

取決於固件版本... – Anders