Express.js服务器端错误消息无法正常工作

时间:2014-11-04 04:47:10

标签: javascript node.js express

这是我的服务器端POST代码。在我的任务保存数据库之前我使用我的唯一值service在数据库中查找相同的数据但是当我运行此代码控制台时ReferenceError: service is not defined

这里有什么问题?有人可以帮我。请

app.post('/collections/:collectionName', function(req, res, next) {
        req.collection.findOne({service: service}, function(e, result){
           if(result){
              res.send{error: "REQUEST ALREADY EXISTS"};
           }
           else{
              req.collection.insert(req.body, {}, function(e, results){
                 if (e) return next(e)
                    res.send(results)
              });
           }
        });
})

更新----

button.addEventListener('click', function(e) {

        var service_ = service.value;
        var amount_ = amount.value;
        var name_ = name.value;
        var phone_ = phone.value;
        var reminder_ = reminder.value;

        if (start_pick < end_pick) {
            var jsondata = [{
                start_time : new Date(start_pick),
                end_time : new Date(end_pick),
                service : service_,
                amount : amount_,
                client_phone : phone_,
                client_name : name_,
                reminder : reminder_
            }];

            var xhr = Titanium.Network.createHTTPClient();
            xhr.setTimeout(10000);

            xhr.open("POST", "http://127.0.0.1:3000/collections/appoinments");
            xhr.setRequestHeader("Content-Type", "application/json; charset=utf-8");
            xhr.send(JSON.stringify(jsondata));
            xhr.onerror = function() {

                Titanium.API.info("Error in connecting to server !!");
                alert("Error on connecting to server, Please try again");
            };
             xhr.onload = function() {

            windowPayment.close();

    }

1 个答案:

答案 0 :(得分:1)

POST请求发送的数据可以通过req.body访问,因此您要查找的变量是req.body.service。此外,假设函数req.collection.findOne使用第一个参数的属性service,您应该保持代码如下:

 req.collection.findOne({service: req.body.service}, function(e, result){
     //...
 });

鉴于对象{req.body.service: ...}无效。

相关问题