MarkLogic - 使用 Javascript 将变量传递给 XML

MarkLogic - Passing variable to XML using Javascript

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

let user = xdmp.getCurrentUser()

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

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

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

如果要使用JavaScript template literals,则将单引号'改为反引号`,并放一个$在标记变量占位符的花括号前面:

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

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