首页 > 解决方案 > MarkLogic 资源扩展的上下文变量是否包含 uri?

问题描述

我正在阅读 MarkLogic 资源扩展文档(https://docs.marklogic.com/guide/rest-dev/extensions#id_21018),我有一个问题。

在列出参数的表中,它指出上下文参数包含输入信息,例如输入类型和 URI。但是,我已经设置了一个资源扩展,它应该接受多个文档并接收content-type,而不是变量中的 URI $context(我将变量打印$context到日志中)。我在我的休息请求中使用了以下语法:

--BOUNDARY
Content-Type: application/xml
Content-Disposition: attachment; filename"test1.xml
<data>testdata</testdata>
--BOUNDARY--

标题为

Content-Type=multipart/mixed; boundary=BOUNDARY

为什么我的 URI 没有显示在这里?

有趣的是,请注意上下文映射键部分(从带有上下文参数描述的表中引用)没有将 URI 列为可能的键。此外,在资源部分的 JavaScript 示例中,URI 是通过显式 url 参数 (ie myresource?basename=test.xml) 构造的。这似乎表明初始文档(说明您可以从 获取 URI $context)有误。是这样吗?

标签: marklogic

解决方案


是的,文档中提到 uri 属性的汇总表对于转换是正确的,但对于资源服务扩展不正确。

一种解决方法是构建一个初始部分,其中包含一个带有 uris 数组的 JSON 文档。然后,您可以并行迭代后续文档和 URI 数组。

希望有帮助,


推荐阅读