当前位置: 首页 > news >正文

专门做前端项目的一些网站万网云主机 wordpress

专门做前端项目的一些网站,万网云主机 wordpress,镜像的网站怎么做排名,怀化网站优匿最近刚刚参与一个基于Play框架的管理平台的升级工作#xff0c;其中涉及到了用户的验证工作。第一次接触play框架#xff0c;直接看已有代码#xff0c;有点晕。因此#xff0c;自己实现了一个简单的用户验证功能。 首先#xff0c;新建一个User类#xff0c;包含两个属性…最近刚刚参与一个基于Play框架的管理平台的升级工作其中涉及到了用户的验证工作。第一次接触play框架直接看已有代码有点晕。因此自己实现了一个简单的用户验证功能。 首先新建一个User类包含两个属性包含两个属性email和password。并在构造器中对密码进行了加密。 Entitypublic class User extends Model { Id private String email; private String password; // Constructor public User(String email, String password) { String passwordHash BCrypt.hashpw(password, BCrypt.gensalt()); this.email email; this.password passwordHash; }}接下来新增控制器Application.java其中主要包含包含两个动作和一个表单类Registration。一个动作register()用于显示注册页面另一个动作postRegister处理表单提交的信息并增加相应的数据库记录。Registration则对应注册页面所显示的表格 public class Application extends Controller {public static class Registration {Emailpublic String email;Requiredpublic String password;}public static Result register() {FormRegistration userForm Form.form(Registration.class);return ok(views.html.register.render(userForm));}public static Result postRegister() {FormRegistration userForm Form.form(Registration.class).bindFromRequest();User user new User(userForm.get().email, userForm.get().password);user.save(); return ok(registered); } }其后新增Rigister所对应的前端页面并在Routes文件中为Appication所对应的动作增加访问路径。 !DOCTYPE html htmlbodyh1 Registration /h1helper.form(action routes.Application.postRegister()) {helper.inputText(userForm(email))helper.inputPassword(userForm(password))input typesubmit}/body /htmlRoutes文件 GET /register controllers.Application.register() POST /register controllers.Application.postRegister()其后访问页面输入用户名和密码可以看到数据库中新增了一条记录。接下来将用户验证的逻辑加入到User类中修改User类新增authenticate()方法。authenticate()接收的是明文密码。上面的验证中首先检查用户邮箱是否存在。如果存在则检查密码是否符合数据库的记录。如果邮箱或者密码错误将返回null。否则返回正确的用户对象。 // Querypublic static Model.FinderInteger, User find new Model.Finder(Integer.class, User.class);// Authentificationpublic static User authenticate(String email, String password) {User user find.where().eq(email, email).findUnique();if (user null) {return user;} else if (BCrypt.checkpw(password, user.password)) {return user;} else {return null;}}接下来进一步修改Application控制器增加两个动作和一个表单类。动作login()用于显示登录页面动作postLogin()用于处理登录表单填写的信息并根据信息决定是否登入用户。Login类对应登录页面的表单。 public static class Login {Emailpublic String email;Requiredpublic String password;public String validate() {if (User.authenticate(email, password) null) {return Invalid user or password;} return null;}}public static Result login() {FormLogin userForm Form.form(Login.class);return ok(views.html.login.render(userForm));}public static Result postLogin() {FormLogin userForm Form.form(Login.class).bindFromRequest();if (userForm.hasErrors()) {return badRequest(Wrong user/password);} else {return ok(Valid user);}}其中在静态类Login中增加了validate()方法并在其中调用User的验证逻辑。正如postLogin()中所示表单的hasErrors()方法将自动检查validate()方法的返回值。如果validate()方法返回为null则说明表单无误。postLogin()的if结构将根据登录是否合法来返回不同的结果。最后同样的在Routes文件中新增两条对应的URL GET /login controllers.Application.login() POST /login controllers.Application.postLogin()其后访问/login页面并尝试登录。发现已增加了验证功能。 转载于:https://www.cnblogs.com/junjiang3/p/7027893.html
http://www.yutouwan.com/news/357061/

相关文章:

  • 株洲专业seo优化快速优化seo软件推广方法
  • 自动化毕设题目网站开发网站设计制作程序
  • 保定企业建站程序学做网站论坛第六节
  • 推进文明网站建设江西省建设工程协会网站查询
  • 江门建设局网站优化方案生物必修一
  • 常用的网站开发网站怎样制作吸引人
  • jsp网站制作史家小学网站建设
  • 安全的合肥网站建设昆明抖音代运营公司
  • 福建住房和城乡建设部网站首页wordpress文章和页面
  • 《建设监理》网站wordpress获取文章第一张图片
  • 东莞网上做公司网站怎么做免费的网站推广
  • 重庆云阳网站建设报价成都定制网站建
  • 网站建设需要多少g合适企业网站推广技巧
  • 扬中网站优化哪家好广州网站关键排名
  • wordpress 适合外贸站wordpress协调世界时
  • 建设校园网站国外研究现状怎么把源码做网站
  • 没后台的网站怎么做优化涪陵区小城镇建设管理处网站
  • 建设网站里的会员系统动漫专业最好的学校
  • 网站兼容模式怎么设置亚马逊关键词排名提升
  • 做网站赚钱吗?衡阳做网站
  • 网站设计可以吗前端开源项目网站
  • 做网站要多钱做网站的困难
  • 网站建设 讲话小程序健康码
  • 《网站建设 补充合同中国的网络营销公司
  • 蒲城县住房和城乡建设局网站给个免费的网址
  • 公益网站设计建设网站定制
  • 虚拟主机有哪些温州百度推广排名优化
  • 在农村开个网站要多少钱公司做的网站搜索不到
  • 网站高并发前端怎么做什么叫网络架构
  • 网站栏目结构图如何建设一个网站站