· 5 years ago · Nov 28, 2019, 12:44 PM
1//app.js
2app.post('/users/login', checkNotAthenticated, function(req, res, next){
3 if(
4 req.body.captcha === undefined ||
5 req.body.captcha === '' ||
6 req.body.captcha === null
7 ){
8 //maybe make just flash and redirect
9 return res.json({"success": false, "msg": "Select Captcha"});
10 }
11 console.log('captcha found!');
12 //secret key
13 const secretKey = '6Lfr9sQUAAAAAEazeXFR887iDU7_MaZB51dQfunk';
14 //verify URL
15 const verifyUrl = 'https://google.com/recaptcha/api/siteverify?secret=' + secretKey + '&response=' + req.body.captcha + '&remoteip=' + req.connection.remoteAddress;
16
17 //make request to verifyUrl
18 request(verifyUrl, function(err, response, body){
19 body = JSON.parse(body);
20 console.log(body);
21
22 //if not successful
23 if(body.success !== undefined && !body.success){
24 return false;
25 return res.json({"success": false, "msg": "Failed Captcha verification"});
26 }
27 else{
28 next();
29 //return res.json({"success": true, "msg": "Passed Captcha verification"});
30 }
31 }),
32 passport.authenticate('local', {
33 successRedirect:'/',
34 failureRedirect:'/users/login',
35 failureFlash: true
36 })(req, res, next)
37
38
39});