Authored by 陈峰

merge

  1 +const Geetest = require('geetest');
  2 +
  3 +const captcha = new Geetest({
  4 + geetest_id: 'bce95d796bc3058615fdf2ec2c0aef29',
  5 + geetest_key: '124c41d3a22aa48f36ae3cd609c51db5'
  6 +});
  7 +
  8 +const geetest = {
  9 + register(req, res, next) {
  10 + captcha.register().then(function(data) {
  11 +
  12 + // data 为一个对象,包含 gt, challenge, success, new_captcha 字段
  13 + // success 为 1 表示正常模式,为 0 表示宕机模式(failback, fallback)
  14 + // var body = {
  15 + // gt: data.geetest_id,
  16 + // challenge: data.challenge,
  17 + // success: data.success
  18 + // };
  19 +
  20 + res.send(data);
  21 + }).catch(next);
  22 + },
  23 + validate(req, res, next) {
  24 + captcha.validate({
  25 + challenge: 'xxx',
  26 + validate: 'xxx',
  27 + seccode: 'xxx'
  28 + }).then(function(success) {
  29 + if (success) {
  30 + return next();
  31 + }
  32 + return res.send(403, {
  33 + code: 403,
  34 + message: 'captcha error'
  35 + });
  36 + });
  37 + }
  38 +};
  39 +
  40 +module.exports = geetest;
@@ -19,10 +19,15 @@ const smsLogin = require(cRoot + '/sms'); @@ -19,10 +19,15 @@ const smsLogin = require(cRoot + '/sms');
19 const update = require(cRoot + '/update'); 19 const update = require(cRoot + '/update');
20 const agreement = require(cRoot + '/app-agreement'); 20 const agreement = require(cRoot + '/app-agreement');
21 21
  22 +const geetest = require(cRoot + '/geetest');
  23 +
22 const router = express.Router(); // eslint-disable-line 24 const router = express.Router(); // eslint-disable-line
23 25
  26 +router.get('/passport/geetest/register', geetest.register);
  27 +
24 // 兼容老的路由 28 // 兼容老的路由
25 router.get('/signin.html', login.common.beforeLogin, login.local.loginPage); 29 router.get('/signin.html', login.common.beforeLogin, login.local.loginPage);
  30 +
26 // router.get('/signin.html', login.common.beforeLogin, smsLogin.loginPage); 31 // router.get('/signin.html', login.common.beforeLogin, smsLogin.loginPage);
27 router.get('/reg.html', disableBFCahce, reg.index); 32 router.get('/reg.html', disableBFCahce, reg.index);
28 router.get('/login.html', login.common.beforeLogin, login.local.international); 33 router.get('/login.html', login.common.beforeLogin, login.local.international);
@@ -34,6 +39,8 @@ router.get('/passport/signout/index', login.local.logout); @@ -34,6 +39,8 @@ router.get('/passport/signout/index', login.local.logout);
34 39
35 // 登录页面 40 // 登录页面
36 router.get('/passport/login', login.common.beforeLogin, login.local.loginPage); 41 router.get('/passport/login', login.common.beforeLogin, login.local.loginPage);
  42 +
  43 +
37 router.get('/passport/international', login.common.beforeLogin, login.local.international); 44 router.get('/passport/international', login.common.beforeLogin, login.local.international);
38 45
39 // 本地登录 46 // 本地登录
@@ -31,6 +31,7 @@ @@ -31,6 +31,7 @@
31 "cookie-parser": "^1.4.3", 31 "cookie-parser": "^1.4.3",
32 "express": "^4.14.1", 32 "express": "^4.14.1",
33 "feed": "^0.3.1", 33 "feed": "^0.3.1",
  34 + "geetest": "^4.1.1",
34 "lodash": "^4.17.4", 35 "lodash": "^4.17.4",
35 "md5": "^2.1.0", 36 "md5": "^2.1.0",
36 "memory-cache": "^0.1.6", 37 "memory-cache": "^0.1.6",