0

我正在尝试从列表中触发 404。像这样的东西:

function (head, req) {
    var row;
    var returnArr = [];
    while (row = getRow()) {
        returnArr.push(row.value);
    }
    if(returnArr.length === 0) {
        start({code:404});
        send(JSON.stringify({error:"not found"}));
    } else {
        send(JSON.stringify(returnArr));
    }
};

我在这里找到了一些帮助。但是,我将start()函数调用为晚的接缝。当start()函数位于开头(在第一行)时,它可以工作。

当然我不能start()提前打电话,因为我首先必须确定视图是否有任何行。

如何实施?

更新:

在调用 getRow() 后 start() 确实不起作用。不确定这是否是预期的行为。这也不起作用:

function (head, req) {
    var row;
    var returnArr = [];
    while (row = getRow()) {
        returnArr.push(row.value);
    }
    if(returnArr.length === 0) {
        throw (['error', 'not_found', 'Some message like Page not found']);
    } else {
        send(JSON.stringify(returnArr));
    }
};
4

1 回答 1

0

是的,这是一个开放的错误。不幸的是,Jira 已关闭,因此我无法链接到该问题。但正如您所发现的,您目前不能在 start() 之前调用 getRow()。

于 2012-08-10T23:12:26.320 回答