【问题标题】:IBM App Connect Enterprise - Pass Path Param to Rest Request NodeIBM App Connect Enterprise - 将路径参数传递给休息请求节点
【发布时间】:2020-05-09 16:28:32
【问题描述】:

在 IBM App Connect Enterprise REST API 项目中,如何将路径参数传递给 REST 请求节点?

我可以使用 ESQL 在计算节点中设置查询参数,例如

SET InputLocalEnvironment.Destination.REST.Request.Parameters.id = 'abc'.

API 可以正常工作。但是,如果我对路径参数执行相同的操作,则值不会被传递。作为一种解决方法,我将值设置为计算节点中的环境变量,并通过 Rest Request Node 属性中的 XPATH 获取它。

有没有类似的方法来设置ESQL中的路径参数,就像查询参数一样?

提前致谢。

【问题讨论】:

    标签: ibm-integration-bus


    【解决方案1】:

    InputLocalEnvironment 对你有用,这让我有点惊讶。

    对于 RESTRequest 节点,URL 由 BaseURL 和 Operation 值(您已经找到的 Parameters 选项)构成。下面的代码说明了Environment Variables with Rest Nodes 中列出的一些值,这些值可用于覆盖 REST 节点的行为。该链接还描述了在 REST 节点完成操作后设置的值。

    SET OutputLocalEnvironment.Destination.REST.Request.BaseURL = 'https://my-prod-server.ibm.com/customerdb/v1';
    SET OutputLocalEnvironment.Destination.REST.Request.Operation = 'updateCustomerByID';
    SET OutputLocalEnvironment.Destination.REST.Request.Parameters.max = 10;
    SET OutputLocalEnvironment.Destination.REST.Request.Parameters.filter = 'Fred Bloggs';
    

    记得将 Compute 节点配置为 Compute ModeLocalEnvironment And Message 否则您的设置不会传递给随后的 RESTRequest 节点。

    【讨论】:

    • 非常感谢 TJA,您的解释有所帮助,更改后的代码有效,是的,您是正确的,InputLocalEnvironment.Destination.REST.Request.Parameters 是如何工作的!
    猜你喜欢
    • 1970-01-01
    • 2020-10-22
    • 2011-03-13
    • 2022-10-18
    • 2020-03-18
    • 1970-01-01
    • 2018-01-15
    • 1970-01-01
    相关资源
    最近更新 更多