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 相关文章推荐
jQuery遮罩层实例讲解
May 11 jQuery
jQuery Autocomplete简介_动力节点Java学院整理
Jul 17 jQuery
使用jQuery实现购物车结算功能
Aug 15 jQuery
jquery操作ul的一些操作笔记整理(干货)
Aug 31 jQuery
jQuery实现的手动拖动控制进度条效果示例【测试可用】
Apr 18 jQuery
jquery.onoff实现简单的开关按钮功能(推荐)
May 24 jQuery
jQuery实现的滑块滑动导航效果示例
Jun 04 jQuery
jQuery实现网页拼图游戏
Apr 22 jQuery
简单易扩展可控性强的Jquery转盘抽奖程序
Mar 16 jQuery
JavaScript实现的弹出遮罩层特效经典示例【基于jQuery】
Jul 10 jQuery
jquery使用echarts实现有向图可视化功能示例
Nov 25 jQuery
原生jQuery实现只显示年份下拉框
Dec 24 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
PHP中文汉字验证码
2007/04/08 PHP
PHP Memcached + APC + 文件缓存封装实现代码
2010/03/11 PHP
使用php判断浏览器的类型和语言的函数代码
2013/02/28 PHP
PHP使用CURL获取302跳转后的地址实例
2014/05/04 PHP
php模拟用户自动在qq空间发表文章的方法
2015/01/07 PHP
php调用自己java程序的方法详解
2016/05/13 PHP
利用PHPStorm如何开发Laravel应用详解
2017/08/30 PHP
JavaScript父子窗体间的调用方法
2015/03/31 Javascript
Jquery使用val方法读写value值
2015/05/18 Javascript
基于jQuery Circlr插件实现产品图片360度旋转
2015/09/20 Javascript
JavaScript转换与解析JSON方法实例详解
2015/11/24 Javascript
jQuery+JSON实现AJAX二级联动实例分析
2015/12/18 Javascript
基于javascript实现图片左右切换效果
2016/01/25 Javascript
JavaScript实现in-place思想的快速排序方法
2016/08/07 Javascript
js发送短信倒计时的简单实现方法
2016/09/08 Javascript
js实现瀑布流效果(自动生成新的内容)
2017/03/16 Javascript
React中this丢失的四种解决方法
2019/03/12 Javascript
详解小程序如何避免多次点击,重复触发事件
2019/04/08 Javascript
vue根据条件不同显示不同按钮的操作
2020/08/04 Javascript
vue+vant 上传图片需要注意的地方
2021/01/03 Vue.js
[46:55]完美世界DOTA2联赛决赛 FTD vs Phoenix 第三场 11.08
2020/11/11 DOTA
Python中的变量和作用域详解
2016/07/13 Python
代码分析Python地图坐标转换
2018/02/08 Python
python3.6使用pickle序列化class的方法
2018/10/22 Python
使用python实现希尔、计数、基数基础排序的代码
2019/12/25 Python
tensorflow之变量初始化(tf.Variable)使用详解
2020/02/06 Python
Python3 元组tuple入门基础
2020/02/09 Python
天猫精选:上天猫,就够了
2016/09/21 全球购物
京东国际站:JOYBUY
2017/11/23 全球购物
JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么?
2015/10/22 面试题
酒店采购员岗位职责
2014/03/14 职场文书
小学美术兴趣小组活动总结
2014/07/07 职场文书
副乡长群众路线教育实践活动个人对照检查材料
2014/09/19 职场文书
卖车协议书范本4篇
2014/10/01 职场文书
群众路线教育实践活动整改方案(个人版)
2014/10/25 职场文书
Java字符缓冲流BufferedWriter
2022/04/09 Java/Android