-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathserver.js
More file actions
69 lines (56 loc) · 1.91 KB
/
Copy pathserver.js
File metadata and controls
69 lines (56 loc) · 1.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
//mongodb commands: http://howtonode.org/node-js-and-mongodb-getting-started-with-mongojs
//http://docs.mongodb.org/manual/reference/mongo-shell/
/*var databaseURI = "localhost:27017/somedb";
var collections = ["users", "blogs"];
var db = require("mongojs").connect(databaseURI, collections);
module.exports = db;
and then just require it where you need to connect to mongo like:
var db = require("./db");
*/
var express = require('express');
var app = express();
var mongojs = require('mongojs');
var db = mongojs('AddressBook', ['Persons']);
var bodyParser = require('body-parser');
app.use(express.static(__dirname));
app.use(bodyParser.json());
app.get('/persons', function(req, res){
console.log('Received find all persons request');
db.Persons.find(function(err, docs){
console.log(docs);
res.json(docs);
})
});
app.get('/person/:id', function(req, res){
console.log('Received findOne person request');
db.Persons.findOne({_id: new mongojs.ObjectId(req.params.id)}, function(err, docs){
console.log(docs);
res.json(docs);
})
});
app.post('/addPerson', function(req, res){
console.log(req.body);
db.Persons.insert(req.body, function(docs){
console.log(docs);
res.json(docs);
})
});
app.delete('/deletePerson/:id', function(req, res){
console.log("Received delete one person request...");
db.Persons.remove({_id: new mongojs.ObjectId(req.params.id)}, function(err, docs){
console.log(docs);
res.json(docs);
});
});
app.put('/updatePerson', function(req, res){
console.log("Received updatePerson request");
db.Persons.findAndModify({query: {"_id": new mongojs.ObjectId(req.body._id)},
update: {$set: {name: req.body.name, email: req.body.email, number: req.body.number}}
}, function(err, docs){
console.log(docs);
res.json(docs);
})
});
//app.use(express.static(__dirname + "/app/views"));
app.listen(3000);
console.log("server running on port 3000");