Nun, ich lese das MEAN Machine Buch und folgt seinen Beispielen. Ich versuche herauszufinden, was mit meinem Code nicht stimmt, damit keine DELETE-Anfrage gestellt wird. GET, PUT und POST funktionieren wie es sollte.Express Router CRUD API. Kann nicht löschen
Ich habe diesen Code auf meinem server.js:
app.all('*', function(req, res, next) {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE, OPTIONS');
res.header('Access-Control-Allow-Headers', 'X-Requested-With, content-type, Authorization');
next();
});
var apiRouter = express.Router();
apiRouter.route('/users/:user_id')
.get(function (req, res) {
User.findById(req.params.user_id, function (err, user) {
if (err) res.send (err);
res.json(user);
});
})
.put(function (req, res) {
User.findById(req.params.user_id, function (err, user) {
if (err) res.send(err);
if (req.body.name) user.name = req.body.name;
if (req.body.username) user.username = req.body.username;
if (req.body.password) user.password = req.body.password;
user.save(function (err){
if (err) send (err);
res.json({message: 'User updated'});
});
})
.delete(function (req, res) {
User.remove({
_id: req.params.user_id
}, function (err, user) {
if (err) return res.send(err);
res.json({ message: 'Deleted' });
});
});
});
Ich habe eine Reihe von Benutzern der Modulus MongoDB-Datenbank und, wenn ich versuche, POSTMAN zu verwenden, mit localhost: 8080/api/users/5610e5576d827dc41fb8e6e, POSTMAN sagt
Cannot DELETE /api/users/5610e5576d827dc41fb8e6e
während mein Node-Server mit Morgan sagt
DELETE /api/users/5610e5576d827dc41fb8e6e 404
Warum bekomme ich einen 404? Was mache ich falsch?
Holly molly, Du hast mein Problem gelöst! Ich habe dieses Problem so lange bekämpft, ich glaube nicht, dass es nur eine schließende Klammer war! Danke vielmals! – Rodmentou