node.js+jQuery实现用户登录注册AJAX交互


Posted in jQuery onApril 28, 2017

最近实现了Node.js当作后台,jQuery写前台AJAX代码的,实现用户登录和注册的功能,刷新了前后端交互的三观。特记录一下。

1.login.ejs实现form框架

<form >
      <ul>
        <li><p>用户名</p></li>
        <li><input type="text" name="username" id="username"></li>
      </ul>
      <ul>
        <li><p>密码</p></li>
        <li><input type="password" name="password" id="password"></li>
      </ul>
      <ul class="mt50">
        <li><input id="login_submit" class="submit" type="button" value="登 陆"></li>
      </ul>
    </form>

form不加method,意图自己用ajax发送请求。

2.js实现request的发送

$("#login_submit").click(function(){
  var username=$('#username').val();
  var password=$('#password').val();
  //这里实现对 username和password格式的判断
  //........
  //发送ajax请求 使用post方式发送json字符串给后台login
  $.ajax({
    type: "post",
    url: "http://localhost:3000/login",
    dataType: "json",
    data:{ username: username, password: password },
    success: function(data){
    //接受返回的数据,前端判断采取的动作
      if(data){
        if(data.message=="false"){
          alert('密码错误,请重新输入');
          window.location.href="login";
        }else{
          alert('登陆成功');
          window.location.href="index";
        }
      } else{
      }
    }
  });
});

2.后台接收

/**
 * 注册页 post 
 */
router.post('/reg', function (req, res, next) {
  //先查询有没有这个user
  console.log("req.body"+req.body);
  user2.findDocuments(DATABASE, "users", 1, {"uName":req.body.username}, function (user) {
    res.setHeader('Content-Type', 'application/json;charset=utf-8');
    if(user.length==0){
      //用户名没有重复 同意创建用户
      user2.insertDocuments(DATABASE, "users",
        [{
          "uName":req.body.username,
          "uPasswd":req.body.password,
          "uEmail":req.body.email,
          "uHasshop":0,
          "uShopname":"null",
          "aId":'-1'

        }],
        function (result){
          res.send({status:"success", message:"true"});
        }
      );
    }
    else{
      // 用户名重复。找到这个user 不同意创建用户
      res.send({status:"success", message:"false"});
    }
  });
});

注册页面跟登陆页面类似。不再赘述。

总之呢,之前老是觉得自己浏览器访问的页面是前端的东西。后端是一个虚无缥缈的一堆代码。现在明白其实访问的所有的url都是属于后端的。后端发送什么内容,浏览器就显示什么内容。前端的显示只是一时半刻,后端的资源才是永久哒。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

jQuery 相关文章推荐
javascript+jQuery实现360开机时间显示效果
Nov 03 jQuery
基于jquery trigger函数无法触发a标签的两种解决方法
Jan 06 jQuery
jquery根据name取得select选中的值实例(超简单)
Jan 25 jQuery
jQuery实现获取动态添加的标签对象示例
Jun 28 jQuery
jQuery序列化form表单数据为JSON对象的实现方法
Sep 20 jQuery
jQuery+css last-child实现选择最后一个子元素操作示例
Dec 10 jQuery
jQuery实现侧边栏隐藏与显示的方法详解
Dec 22 jQuery
JS/jQuery实现超简单的Table表格添加,删除行功能示例
Jul 31 jQuery
Jquery让form表单异步提交代码实现
Nov 14 jQuery
jQuery单页面文字搜索插件jquery.fullsearch.js的使用方法
Feb 04 jQuery
jQuery实现的解析本地 XML 文档操作示例
Apr 30 jQuery
jQuery实现视频展示效果
May 30 jQuery
jQuery使用eraser.js插件实现擦除、刮刮卡效果的方法【附eraser.js下载】
Apr 28 #jQuery
jquery实现图片上传前本地预览
Apr 28 #jQuery
jQuery实现jQuery-form.js实现异步上传文件
Apr 28 #jQuery
jQuery tip提示插件(实例分享)
Apr 28 #jQuery
jQuery自定义元素右键点击事件(实现案例)
Apr 28 #jQuery
jQuery实现动态添加、删除按钮及input输入框的方法
Apr 27 #jQuery
jquery ui sortable拖拽后保存位置
Apr 27 #jQuery
You might like
在PHP3中实现SESSION的功能(二)
2006/10/09 PHP
PHP Mysql编程之高级技巧
2008/08/27 PHP
php下过滤html代码的函数 提高程序安全性
2010/03/02 PHP
zend framework中使用memcache的方法
2016/03/04 PHP
PHP使用glob方法遍历文件夹下所有文件的实例
2018/10/17 PHP
TP框架实现上传一张图片和批量上传图片的方法分析
2020/04/23 PHP
JS解析XML的实现代码
2009/11/12 Javascript
有关于JS构造函数的重载和工厂方法
2013/04/07 Javascript
基于javascipt-dom编程 table对象的使用
2013/04/22 Javascript
利用JS解决ie6不支持max-width,max-height问题的方法
2014/01/02 Javascript
用jquery获取select标签中选中的option值及文本的示例
2018/01/25 jQuery
详解Vue Elementui中的Tag与页面其它元素相互交互的两三事
2018/09/25 Javascript
详解如何用webpack4从零开始构建react开发环境
2019/01/27 Javascript
微信小程序 Storage更新详解
2019/07/16 Javascript
angularjs自定义过滤器demo示例
2019/08/24 Javascript
理解JavaScript中的Proxy 与 Reflection API
2020/09/21 Javascript
Python中的ConfigParser模块使用详解
2015/05/04 Python
python过滤字符串中不属于指定集合中字符的类实例
2015/06/30 Python
python 连接sqlite及简单操作
2017/06/30 Python
python3实现公众号每日定时发送日报和图片
2018/02/24 Python
Python for循环中的陷阱详解
2018/07/13 Python
python绘制地震散点图
2019/06/18 Python
Django使用中间件解决前后端同源策略问题
2019/09/02 Python
python安装和pycharm环境搭建设置方法
2020/05/27 Python
python 利用matplotlib在3D空间中绘制平面的案例
2021/02/06 Python
CSS3文本换行word-wrap解决英文文本超过固定宽度不换行
2013/10/10 HTML / CSS
财务人员个人求职信范文
2013/12/04 职场文书
法务专员岗位职责
2014/01/02 职场文书
中学生校园广播稿
2014/01/16 职场文书
汽车队司机先进事迹材料
2014/02/01 职场文书
董事长助理岗位职责
2014/02/18 职场文书
中班中秋节活动反思
2014/02/18 职场文书
2015高考寄语集锦
2015/02/27 职场文书
张丽莉事迹观后感
2015/06/16 职场文书
解决pytorch读取自制数据集出现过的问题
2021/05/31 Python
win10电脑右下角输入法图标不见了?Win10右下角不显示输入法的解决方法
2022/07/23 数码科技