Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows Microsoft azure移动服务脚本_Windows_Node.js_Azure_Azure Mobile Services - Fatal编程技术网

Windows Microsoft azure移动服务脚本

Windows Microsoft azure移动服务脚本,windows,node.js,azure,azure-mobile-services,Windows,Node.js,Azure,Azure Mobile Services,我无法在Windows Azure中支持我的移动服务请求。 问题: 我如何检查服务器对客户端的响应是否有任何记录或编号。我有这个,但它不起作用 function read(query, user, request) { if (query.take(recordCount) > 0) { request.respond(200, "Exist"); } else { request.respond(500, "ERROR"); } 下面是查看查询结果的示例: functi

我无法在Windows Azure中支持我的移动服务请求。 问题: 我如何检查服务器对客户端的响应是否有任何记录或编号。我有这个,但它不起作用

function read(query, user, request) {
if (query.take(recordCount) > 0) {
    request.respond(200, "Exist");
} else {
    request.respond(500, "ERROR");
}

下面是查看查询结果的示例:

function read(query, user, request) {

    request.execute( {success: function(results) {
        console.log(results);
        request.respond(200, results);
    }, error: function(error) {
        console.log('error: ', error);
        request.respond(500);
    }});

}
function read(query, user, request) {
    query.includeTotalCount(); // tell me how many items there are
    query.take(0);             // but don't bother returning them
    request.execute({
        success: function(results) {
            if (results.totalCount > 0) {
                request.respond(200, { status: 'Item exists' });
            } else {
                request.respond(500, { status: 'ERROR' });
            }
        }
    });
}

在success块中,您可以检查以确保结果不是空的,如果有结果,则用200回复,如果没有,则用500回复。如果您不想执行完全读取查询,您也可以使用mssql模块执行自定义sql语句(即从tablename中选择count(*)。

除了@Chris建议的之外,您还可以使用
includeTotalCount()
函数以及
获取(0)
(如果您只关心结果的数量,而不关心结果本身),请仅统计查询中将返回的项:

function read(query, user, request) {

    request.execute( {success: function(results) {
        console.log(results);
        request.respond(200, results);
    }, error: function(error) {
        console.log('error: ', error);
        request.respond(500);
    }});

}
function read(query, user, request) {
    query.includeTotalCount(); // tell me how many items there are
    query.take(0);             // but don't bother returning them
    request.execute({
        success: function(results) {
            if (results.totalCount > 0) {
                request.respond(200, { status: 'Item exists' });
            } else {
                request.respond(500, { status: 'ERROR' });
            }
        }
    });
}
或者,如果您真正想知道的是是否有任何结果,您甚至可以跳过
includeTotalCount
调用,只需通过
take(1)
调用强制响应返回最多1个结果:

function read(query, user, request) {
    query.take(1);             // return at most one item
    request.execute({
        success: function(results) {
            if (results.length > 0) {
                request.respond(200, { status: 'Item exists' });
            } else {
                request.respond(500, { status: 'ERROR' });
            }
        }
    });
}

,如何检查结果是否为非空?Results!==null&&Results.length!=0如果调用了
success
处理程序,则可以假定结果为非空。