在DataPower中使用GateWayScripts有什么用途?

时间:2018-05-16 13:37:31

标签: ibm-datapower

您能告诉我任何有用的在线资源,以学习和实施一些方案来探索更多相关信息。感谢。

2 个答案:

答案 0 :(得分:2)

Datapowers历来是按顺序排列的:

  • XML转换加速设备(曾经是一件事,XSLT太慢而无法处理)
  • SSL卸载设备(同样,曾经是同样的原因)
  • 网站和应用程序网关。 Web站点和Web服务安全性都集中在HTTP和SOAP / XML应用层机制和标准(SSL / TLS,WS-S,SAML等),还有令牌管理,安全转换......想想“超级SSO” +应用程序安全网关
  • 更专业的集成工具:XML的转换(使用XSLT),转换为非XML格式(如CSV),数据库连接,集成模式(如路由,编写和更多)。有些人称Datapower为轻量级ESB。
  • 更专业的用途:B2B(EDI), JSON处理,REST / JSON支持,API管理(用作API Connect的部署点)

请注意,以后的所有功能都需要前者(ESB基于WS Security等)

如您所知,Datapower devlopement的大部分内容都是通过转换完成的。它们的默认建立语言是XSLT(XQuery也是历史的,不太流行的选项)。

XSLT是最强大,最可怕的语言之一。有点像XML世界的Perl + REGEX ......

...但是XSLT还有另一个问题。它不适用于JSON。让10年前的Datapower开始退休。

首先,IBM设计了伪XML处理JSON的方法。您可以将入站JSON转换为XML,并在XSLT中使用JSON AS XML。逆操作是使用XSLT生成JSON ...它工作得很好但看起来像是旧式的HTML / PHP合并代码。

所以IBM提出了一个好主意:GatewayScript。 (主要基于许多其他好主意) GatewayScript is basically ECMAScript 2015 (ES6) + CommonJS 1.0 + Many super popular JS crypto libraries。 ECMAScript显然更多地称为JavaScript。

与您的问题相关,GatewayScript的主要优势是为上面的列表中的所有功能启用了更简单的JSON Web服务开发,适用于现代REST / JSON API,而不是旧版(但仍然好的)SOAP / XML Web服务。

GatewayScript已存在多年,不再是“测试版”选项。

以下是一些其他简洁的GatewayScript功能:

我希望这会有所帮助。

答案 1 :(得分:2)

GhislainCote的答案非常完整但基本上GatewayScript是Node.js,它带有一个用于处理会话对象的附加框架,该对象将包含您的数据/有效负载。 还有一些特殊的物体,例如service-metadataheader-metadata将包含DataPower变量和标题。

示例脚本在store:///gatewayscript/目录中可用,例如store:///healthcheck.js

还要查看Knowledgecenter,它包含很多有关GatewayScript的帮助和信息: https://www.ibm.com/support/knowledgecenter/SS9H2Y_7.7.0/com.ibm.dp.doc/gatewayscript_model.html

GatewayScript功能非常强大,我编写了对AS2开发(对于没有B2B模块选项的客户)和GatewayScript中RosettaNet处理的编码支持,因此对于您可以实现的目标几乎没有限制!