Javascript 如何通过在MarkLogic中传递URI和集合名称来搜索doucments?
我想在javascript中构造一个搜索查询,在这里我传递一个文档的URI和它的集合名称,这样我就可以以outputJSON的形式获取文档Javascript 如何通过在MarkLogic中传递URI和集合名称来搜索doucments?,javascript,json,search,marklogic,Javascript,Json,Search,Marklogic,我想在javascript中构造一个搜索查询,在这里我传递一个文档的URI和它的集合名称,这样我就可以以outputJSON的形式获取文档 我尝试了fn.doc、cts.doc等,但找不到如何在其中使用集合名称。对此,您可能不需要复杂的cts查询: let collections = xdmp.documentGetCollections('test.json') if(collections.includes('test')) { fn.doc('test.json') } else {
我尝试了fn.doc、cts.doc等,但找不到如何在其中使用集合名称。对此,您可能不需要复杂的cts查询:
let collections = xdmp.documentGetCollections('test.json')
if(collections.includes('test')) {
fn.doc('test.json')
} else {
"not found"
}
只需使用xdmp.documentGetCollections读取文档集合,并测试它是否包含您的集合。然后将其与fn.doc一起返回。URI应该足以获取文档。如果要将其作为查询,请使用cts.documentQueryuri。如果要确保它也有特定的集合,您可以在cts.collectionQuerycollections中执行以下操作:
cts.andQuery([cts.collectionQuery(collections),cts.documentQuery(uri)])