【问题标题】:Not able to remove from Database using node js/mongodb/socket.io无法使用节点 js/mongodb/socket.io 从数据库中删除
【发布时间】:2016-04-28 19:15:26
【问题描述】:

这是我的数据库表“用户”的架构

{
   "_id": {
    "$oid": "572255b0dad7d9781f92d6bd"
   },
   "local": {
       "password": "$2a$08$JMHr7CMBNkFqi1xxFvO9je1w9qi2BP4tR9Z81FsA2N267PNIBD3ma",
       "email": "a@a.a"
   },
   "__v": 0
}

我正在尝试使用以下代码从我的数据库中删除它: 函数.js:

function deleteUser(finishedEmail){
   try{
     var socket = io.connect('http://127.0.0.1:8080');
     console.log("success");
   } catch(e){
     console.log("fail");
   }
   if(socket !== undefined){
       var email = finishedEmail;
       socket.emit('userDelete',{
         email:email
       })
   }
}

server.js:

    var col2 = db.collection('users');
    socket.on('userDelete',function(data){
        var email = data.email;
        console.log(data.email);
        col2.deleteOne({email: email}, function(){
            console.log("successful deletion");
        });
    });

在我的控制台中,我收到以下日志:“a@a.a”和“成功删除”。但是邮件没有被删除。我做错了什么?

我尝试了以下方法:

col2.deleteOne({local:{email: email}}, function(){
    console.log("successful deletion");
});

col2.deleteOne({email: email}, function(){
    console.log("successful deletion");
});

col2.deleteOne({local.email: email}, function(){
    console.log("successful deletion");
});

【问题讨论】:

    标签: node.js mongodb socket.io


    【解决方案1】:

    我认为你必须在 server.js 中编写 -

    col2.deleteOne({"local.email": email}, function(){
       console.log("successful deletion");
    });
    

    【讨论】:

    • 不幸的是我试过了,它说“Unexpected Token”。 ,所以在本地之后。所以这行不通
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-22
    • 2018-05-09
    • 2018-06-02
    • 1970-01-01
    相关资源
    最近更新 更多