-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapp.js
110 lines (99 loc) · 2.37 KB
/
app.js
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
const express = require('express');
const redis = require('./models/redis.js');
const bodyParser = require('body-parser');
const mongodb = require('./models/mongodb.js');
let app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
//扔一个飘流瓶
//POST owner=xxx&type=xxx&content=xxx[&type=xxx]
app.post('/', function (req, res){
if(!(req.body.owner && req.body.type && req.body.content)){
if(req.body.type && (['male', 'female'].indexOf(req.body.type) === -1)){
return res.send({
code :0,
msg: '类型错误'
});
}
return res.send({
code :0,
msg: '信息不完整'
});
}
redis.throw(req.body, function (result){
res.send(result);
});
});
//捡一个飘流瓶
//GET /?user=xxx[type=xxx]
app.get('/', function (req, res){
if(!req.query.user){
return res.send({
code :0,
msg: '信息不完整'
});
}
if(req.query.type && (['male', 'female'].indexOf(req.query.type) === -1)){
return res.send({
code :0,
msg: '类型错误'
});
}
redis.pick(req.query, function (result){
if(result.code === 1){
mongodb.save(req.query.user, result.msg, function (err){
if(err){
return res.send({
code :0,
msg: '获取飘流瓶失败'
});
}
res.send(result);
});
}else{
res.send(result);
}
});
});
//扔回一个飘流瓶
//POST owner=xxx&type=xxx&content=xxx&time=xxx
app.post('/back', function (req, res){
redis.throwBack(req.body, function (result){
res.send(result);
});
});
//获取一个用户的所有飘流瓶
//GET /user/ss
app.get('/user/:username', function (req, res){
mongodb.getAll(req.params.username, function(result){
res.send(result);
});
});
//获取一个飘流瓶内容
//GET /bottle/593a6be31a02fd0f841c9231
app.get('/bottle/:bottleId', function (req, res){
mongodb.getOne(req.params.bottleId, function(result){
res.send(result);
});
});
//回复飘流瓶内容
//POST /reply/593a6be31a02fd0f841c9231
app.post('/reply/:_id', function (req, res){
if(!(req.body.user && req.body.content)){
return res.send({
code :0,
msg: '回复信息不完整'
});
}
mongodb.reply(req.params._id, req.body, function (result){
res.send(result);
});
});
//删除飘流瓶
//GET /delete/593a6be31a02fd0f841c9231
app.get('/delete/:id', function (req, res){
mongodb.delete(req.params._id, function (result){
res.send(result);
});
});
app.listen(8989);