couchDB中的JSON格式列表

时间:2013-01-22 22:54:45

标签: couchdb

我正在为couchDB编写一个列表。我读过的所有文档都假定您希望以html或纯文本格式返回数据。但是,我需要以JSON格式返回它,与视图返回的方式完全相同(我编写的应用程序依赖于此)。

让列表以JSON格式返回数据的正确方法是什么?

2 个答案:

答案 0 :(得分:2)

尝试toJSON(),请参阅example

答案 1 :(得分:0)

您需要使用send格式化输出以模仿JSON输出。以下是我们如何在实际案例中执行此操作的示例:

function(head, req) {
    start({"headers": {"Content-Type": "application/json"}});
    var keys = {};
    while (row = getRow()) {

    //Code goes here

    send("{\"rows\":[");
    var init = true;
    for (var key in keys) {
        if (init) {
            send("\n");
            init = false;
        }
        else send(",\n");
        send("{\"key\": " + key + ",\"value\":");
        send("{\"first_val\":" + val1);
        send(", \"second_val\":" + val2);
        send(", \"third_val\":" + val3 + "}}");
    }
    send("\n]}");
}

通过这种方式,列表的输出格式与基础视图的格式相同。