line.js
2 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
var unirest = require('unirest');
var mongo = require('mongodb')
module.exports.lineNoti = async (req, res) => {
console.log('===== POST lineNoti =====')
console.log('url', req.originalUrl);
console.log('headers', req.headers);
console.log('query', req.query);
console.log('params', req.params);
console.log('body', req.body);
unirest.post('https://notify-bot.line.me/oauth/token')
.form({
grant_type: 'authorization_code',
code: req.query.code,
redirect_uri: 'http://127.0.0.1:3002/linenoti',
client_id: 'VZ79ZR2Xtc15nZKQexT3sI',
client_secret: 'lsqqZr6B2PJXrpjgNbw4DFr88DJYoFrFSQ5VTPlICaW'
})
.end(function (response) {
console.log(response.body);
unirest.post('https://notify-api.line.me/api/notify')
.headers({
Authorization: `Bearer ${response.body.access_token}`
})
.form({
message: `token:${response.body.access_token},state:${req.query.state}`
}).end(function (response) {
res.status(304).redirect(response.body)
});
});
}
module.exports.callback = async (req, res) => {
console.log('===== GET lineCallback =====')
console.log('url', req.originalUrl);
console.log('headers', req.headers);
console.log('query', req.query);
console.log('params', req.params);
console.log('body', req.body);
unirest.post('https://api.line.me/oauth2/v2.1/token')
.form({
grant_type:"authorization_code",
code:req.query.code,
redirect_uri:"http://127.0.0.1:3002/api/callback",
client_id:"1655116583",
client_secret:"90ada7fc7b535e514dfa3d84c20c33ff"
}).end(function (response) {
unirest.get('https://api.line.me/v2/profile')
.headers({
Authorization: `Bearer ${response.body.access_token}`
}).end(function (response) {
res.send({
userId : response.body.userId,
date: req.query.state
})
});
});
}