修改登陆方法

打开UserModule, 将login方法修改为

  1. @At
  2. @Filters // 覆盖UserModule类的@Filter设置,因为登陆可不能要求是个已经登陆的Session
  3. public Object login(@Param("username")String name,
  4. @Param("password")String password,
  5. @Param("captcha")String captcha,
  6. @Attr(scope=Scope.SESSION, value="nutz_captcha")String _captcha,
  7. HttpSession session) {
  8. NutMap re = new NutMap();
  9. if (!Toolkit.checkCaptcha(_captcha, captcha)) {
  10. return re.setv("ok", false).setv("msg", "验证码错误");
  11. }
  12. User user = dao.fetch(User.class, Cnd.where("name", "=", name).and("password", "=", password));
  13. if (user == null) {
  14. return re.setv("ok", false).setv("msg", "用户名或密码错误");
  15. } else {
  16. session.setAttribute("me", user.getId());
  17. return re.setv("ok", true);
  18. }
  19. }

注意一下其中检查验证码的Toolkit.checkCaptcha方法.