全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

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

最近实现了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都是属于后端的。后端发送什么内容,浏览器就显示什么内容。前端的显示只是一时半刻,后端的资源才是永久哒。

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


# node.js  # ajax  # 交互  # node  # nodejs前后台交互  # 在Node.js下运用MQTT协议实现即时通讯及离线推送的方法  # 解决Node.js mysql客户端不支持认证协议引发的问题  # Node.js中Request模块处理HTTP协议请求的基本使用教程  # 利用Node.js+Koa框架实现前后端交互的方法  # nodejs 实现MQTT协议的服务器端和客户端的双向交互的过程  # 后端  # 都是  # 是一个  # 才是  # 虚无缥缈  # 觉得自己  # 不同意  # 不加  # 用户登录  # 实现了  # 半刻  # 重新输入  # submit  # button  # status  # method  # login_submit  # username  # text  # id 


相关文章: 如何彻底删除建站之星生成的Banner?  北京制作网站的公司,北京铁路集团官方网站?  高防服务器租用首荐平台,企业级优惠套餐快速部署  桂林网站制作公司有哪些,桂林马拉松怎么报名?  企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?  建站之星安装模板失败:服务器环境不兼容?  导航网站建站方案与优化指南:一站式高效搭建技巧解析  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?  微信网站制作公司有哪些,民生银行办理公司开户怎么在微信网页上查询进度?  宝塔面板创建网站无法访问?如何快速排查修复?  网站制作说明怎么写,简述网页设计的流程并说明原因?  网站制作软件免费下载安装,有哪些免费下载的软件网站?  中山网站推广排名,中山信息港登录入口?  如何在IIS中新建站点并配置端口与IP地址?  C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)  建站之星收费标准详解:套餐费用及年费价格表一览  红河网站制作公司,红河事业单位身份证如何上传?  武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?  详解jQuery停止动画——stop()方法的使用  制作宣传网站的软件,小红书可以宣传网站吗?  制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  Android自定义listview布局实现上拉加载下拉刷新功能  创业网站制作流程,创业网站可靠吗?  如何基于云服务器快速搭建网站及云盘系统?  建站为何优先选择香港服务器?  如何在香港免费服务器上快速搭建网站?  如何在宝塔面板中修改默认建站目录?  湖州网站制作公司有哪些,浙江中蓝新能源公司官网?  如何选择香港主机高效搭建外贸独立站?  建站之星如何快速解决建站难题?  广东企业建站网站优化与SEO营销核心策略指南  建站之星3.0如何解决常见操作问题?  如何选择高效可靠的多用户建站源码资源?  湖北网站制作公司有哪些,湖北清能集团官网?  定制建站方案优化指南:企业官网开发与建站费用解析  如何在万网ECS上快速搭建专属网站?  学校免费自助建站系统:智能生成+拖拽设计+多端适配  如何在宝塔面板中创建新站点?  如何正确选择百度移动适配建站域名?  如何在局域网内绑定自建网站域名?  网站制作壁纸教程视频,电脑壁纸网站?  建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析  专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何选择网络建站服务器?高效建站必看指南  网站制作大概多少钱一个,做一个平台网站大概多少钱?  义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  如何通过主机屋免费建站教程十分钟搭建网站?  如何快速搭建高效服务器建站系统? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。