В restdb.io я создаю собственный маршрут сервера https://restdb.io/docs/custom-rest-routes#restdb, чтобы выбрать случайный документ из коллекции (вместо того, чтобы возвращать всю коллекцию в Биксби, затем выбрать случайный), и у меня некоторые трудности с получением функции onGET для выполнения двух вызовов базы данных подряд.
// #!/javascript
const onGET = (req, res) => {
db.get("/rest/content?totals=true&count=true", {"contenttype": "facts"}, {}, (dberr, dbdata) => {
//log.debug("Input", req);
const c = dbdata.totals.count
log.debug("count is", c)
// pick random number 1 ... c
// skip to doc #c and get just one
// for now just get doc #5
const test = "5"
log.debug("test is", test)
// command to get doc #5 not working
const foo = db.get("/rest/content?skip=5)", {"contenttype": "facts"}, {$max: 1})
log.debug("foo is", foo)
res.end({"text": foo});
})
}
инспектор REST показывает следующий вывод:
08 Mar 20:31:10 200 GET /rest/content?totals=true&count=true&q={"contenttype":"facts"}&h={} ...
08 Mar 20:31:10 200 DEBUG random2.onGET count is 230
08 Mar 20:31:10 200 DEBUG random2.onGET test is 5
08 Mar 20:31:10 200 DEBUG random2.onGET foo is {}
Таким образом, проблема в том, что он не выполняет второй запрос БД и, следовательно, ответ пуст.