function get(context, params) {
var max = "http://blahblah"; //declaring namespace
let query = []
if (params.tokenNum) {
query.push(cts.elementValueQuery(fn.QName(max, "TOKENUM"), params.tokenNum))
query.push(cts.collectionQuery("WORKORDER"))
}
if (params.location) {
query.push(cts.elementValueQuery(fn.QName(max, "LOC"), params.location))
query.push(cts.collectionQuery("WORKORDER"))
}
if (params.Id) {
query.push(cts.elementValueQuery(fn.QName(max, "ID"), params.Id))
query.push(cts.collectionQuery("WORKORDER"))
}
let result = []
let doc = fn.subsequence(cts.search(cts.andQuery(query)), params.start, params.length)
const json = require('/MarkLogic/json/json.xqy');
let config = json.config("custom");
for (var d of doc) {
result.push(json.transformToJson(d, config));
}
return result
};
Я пытаюсь вернуть массив документов JSON, используя расширение REST, но все, что я получаю, - это пустой массив. Я использую URL http://localhost:9015/v1/resources/location?rs:Id=ABC&rs:start=1&rs:length=10
Однако, когда я запускаю этокод в консоли запросов с использованием объекта params в качестве теста, подобного этому
let params = {
start: '1',
length: '10',
tokenNum: "100404",
location: "0256",
Id: "ABC"
};
, тогда я получаю то, что я ищу (это массив документов JSON).
Я могуне понять, что идет не так.Буду признателен, если кто-то может помочь