【问题标题】:MarkLogic - Passing variable to XML using JavascriptMarkLogic - 使用 Javascript 将变量传递给 XML
【发布时间】:2019-02-18 22:10:09
【问题描述】:

我正在使用 javascript 读取 XML,并在存储到数据库之前创建一个信封。在创建标头时,我需要用当前用户的值填充“created-by”元素。

let user = xdmp.getCurrentUser()

我尝试了类似下面的方法,但它没有用值替换变量。

let a = xdmp.unquote('<created-by>{user}</created-by>')

如何使用 Javascript 将变量传递给 XML?

【问题讨论】:

    标签: marklogic marklogic-9 marklogic-dhf


    【解决方案1】:

    如果您想使用 JavaScript template literals,则将单引号 ' 更改为反引号 `,并在标记变量占位符的花括号前放置 $

    let a = xdmp.unquote(`<created-by>${user}</created-by>`)
    

    【讨论】:

    • 完美!非常感谢。我还注意到我不必将标头转换为 XML。我能够使用 XML 文档、标题 (JSON) 和 dataFormat 调用 dhf.makeEnvelope 作为“xml”。
    【解决方案2】:

    还有NodeBuilder API。它允许您以编程方式从 JavaScript 构建 XML。对于上面的内容,这可能有点过头了,但是当您需要对正在构建的 XML 结构进行更多控制时,这很好。

    【讨论】:

    • 非常感谢分享。
    猜你喜欢
    • 1970-01-01
    • 2012-11-05
    • 1970-01-01
    • 2014-04-15
    • 2011-09-02
    • 2013-12-27
    • 1970-01-01
    • 2018-09-23
    • 2012-01-28
    相关资源
    最近更新 更多