读取 JSON 键值并将其存储在 XSLT 变量中
Read JSON Key Value and store it XSLT Variable
请帮助我获取 XSLT 代码,该代码将在 DataPower 中用于以下输入
Input: {
"Timestamp": "2018-12-19T10:52:21.0870605-05:00",
"ResponseType": "Success",
"Name": [
{
"Code": "1001",
"Description": "ABC",
"Number": "123"
},
{
"Code": "1002",
"Description": "XYZ",
"Number": "123"
},
{
"Code": "1003",
"Description": "PQA",
"Number": "123"
},
{
"Code": "1004",
"Description": "MNO",
"Number": "123"
}
]
}
输出:
XSLT 变量
xsl:variable_code = 1001,1002,1003,1004
xsl:variable_Name : ABC,XYZ,PQA,MNO
XSLT 本身不能使用这种格式(XSLT 输入总是 XML,但输出可以是任何格式)。
有办法解决这个问题。
1 - 改为使用 Gatewayscript 转换。您可以在 own Datapower "sample" folders" 上找到示例。文件以“.js”结尾
2 - 您仍然可以在 XSLT 中执行此操作,但需要使用输入设置和特殊的隐藏魔法变量将 JSON 自动转换为 XML。
操作方法:
- 在您的对象(XML 防火墙或多协议 Gwy)中,将输入指定为 "JSON"
- 在要使用 XSLT 解释此输入的规则步骤中,不要使用可变的 "PIPE" 或 "INPUT" 作为输入,而是使用“__JSONASJSONX”。 MORE INFO HERE.
- 这将允许您在转换为 XML 后导航 JSON 文件。
这里是an example of the conversion.
剩下的只是 Datapower 上的普通 XSLT 编程...您可以创建 JSON 或 XML 输出...您的选择!
请帮助我获取 XSLT 代码,该代码将在 DataPower 中用于以下输入
Input: {
"Timestamp": "2018-12-19T10:52:21.0870605-05:00",
"ResponseType": "Success",
"Name": [
{
"Code": "1001",
"Description": "ABC",
"Number": "123"
},
{
"Code": "1002",
"Description": "XYZ",
"Number": "123"
},
{
"Code": "1003",
"Description": "PQA",
"Number": "123"
},
{
"Code": "1004",
"Description": "MNO",
"Number": "123"
}
]
}
输出:
XSLT 变量
xsl:variable_code = 1001,1002,1003,1004
xsl:variable_Name : ABC,XYZ,PQA,MNO
XSLT 本身不能使用这种格式(XSLT 输入总是 XML,但输出可以是任何格式)。
有办法解决这个问题。
1 - 改为使用 Gatewayscript 转换。您可以在 own Datapower "sample" folders" 上找到示例。文件以“.js”结尾
2 - 您仍然可以在 XSLT 中执行此操作,但需要使用输入设置和特殊的隐藏魔法变量将 JSON 自动转换为 XML。 操作方法:
- 在您的对象(XML 防火墙或多协议 Gwy)中,将输入指定为 "JSON"
- 在要使用 XSLT 解释此输入的规则步骤中,不要使用可变的 "PIPE" 或 "INPUT" 作为输入,而是使用“__JSONASJSONX”。 MORE INFO HERE.
- 这将允许您在转换为 XML 后导航 JSON 文件。
这里是an example of the conversion.
剩下的只是 Datapower 上的普通 XSLT 编程...您可以创建 JSON 或 XML 输出...您的选择!