2017-11-03 4 views
-2
router.delete('/:id', function(req, res){ 
    user.remove({ 

     _id: req.params.id 

    }, function(err, users) { 

     if(err) { 
      res.status(404).send({ 
       message: "Invalid User", 
       data: []  
      }); 

     } else { 
      res.status(200).send({ 
       message: "User deleted", 
       data: [] 
      }); 
     } 
    }); 
}); 

私はRESTful APIのDELETEエンドポイントを実装しようとしました。 それは成功し、私は郵便配達にそれをテストする場合、既存のデータを削除 が、私は、無効なデータを削除しようとすると、それはまだ私に200無効なデータを削除するRESTful API

の応答ステータスを持つ削除メッセージ 私は何の間違いを作っていますを与えますか?

答えて

0

それが正しくない場合は、コードが正常に動作します。

しかし、mongodbで作業している場合は、ユーザの値をnMatchedに戻すことができます。 と、このタイプのフラグを含むすべてのデータベース(ここでは、フラグはユーザーオブジェクトの 'nMatched'フィールドを意味します。usersオブジェクトを印刷して確認できます)。 mongodbには値が入ります0または1

このようなことができますか?

function(err, users) { 

     if(err) { 
      res.status(404).send({ 
       message: "Invalid User", 
       data: []  
      }); 

     } else if (users.nMatched === 0) { 

      res.status(400).send({ 
       message: "User not exist deleted", 
       data: [] 
      }); 
     } else { 
      res.status(200).send({ 
       message: "User deleted", 
       data: [] 
      }); 
      } 
    }); 
+0

申し訳ありませんが、私はあなたが何を意味するかを取得していない「と、すべてのデータベースのために、彼らは旗のこのタイプが含まれている。MongoDBのために、彼らは、0または1の値を含む」 – Dawn17

+0

旗はあなたが後に返す 'users'オブジェクトを持っていることを意味しますそれが何かが削除されたかどうかデータを持ついくつかのキー値が含まれます。 mongodbの場合、この 'users.nMatched'のようにアクセスできます。あなたはすべてのステータスフラグを取得しますユーザーを印刷します。 –

+0

「無効なユーザー」と「削除されていないユーザー」の違いは何ですか? – Dawn17

関連する問題