javascript - nodejs登录系统控制静态页面跳转
高洛峰
高洛峰 2017-06-10 09:49:02
0
3
859

要快速做一个演示系统,由于后台缺乏,想自己用nodejs搭建.
虽然都是静态页面,但是要完成登录功能(无需注册,可以直接数据库分配密码),登录之后才能跳转到页面首页,若未登录而直接输入首页路径,则跳转到登录页面.
由于是小白不太会弄.请各位帮忙指引方向,怎么能快速完成

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(3)
漂亮男人

你需要 koa and koa-router

代言

可以使用express的session,然后写一个checkLogin的方法对!req.session.user是否登录进行判断。然后再写一份checkNoLogin的方法然后对req.session.user进行判断。

漂亮男人

html我就不给你写了,基础的表单内容
js的ajax请求:

$("#userLogin").click(function(){
        $.ajax({
          url: "/login",
          type: "GET",
          data: {
              username: $("#email-one").val(),    //    用户名和密码
              password: $("#password-one").val()
          },
          success: function(data){
              if(data.status==1){
              window.location.href='index.html';    //    请求成功后到你的主页
              }else{
                  alert(data.msg);
              }
                  
          },
          error: function(){
            layer.msg('访问失败', hint);
          }
      });
    });

下面的代码如果看不懂的话,可以参考/a/11...

var express=require("express");
var events = require('events');
var app=express();
var session=require("session");
var path=require("path");
var mysql=require("mysql");
var dirname=__dirname;
app.use(express.static(path.join(__dirname, 'project')));
app.get("/login",function(req,res){
    //    连接数据库
    var connection=mysql.createConnection({
        host:"localhost",
        user:"root",
        password:"数据库密码",
        database:"node"
    });
    connection.connect();
    var sql="select * from user where username='"+req.query.username+"' and password='"+req.query.password+"'";
    connection.query(sql,function(err,result){
        if(err){
            res.end("登陆失败");
        }
        if(result.length==0){
            res.json({status:0,msg:“用户名或密码不正确”});
        }else{
            req.session.user=req.query.username;
            req.session.isLogin=true;
            res.json({status:1,msg:“登录成功”});
        }
    })
    connection.end();
})
app.listen(8081);

后面页面的访问必须有session信息,你可以在每个页面向后台发出请求。然后你用node检测session内容,ajax再做出动作。大概的思路的这样,我也是小白,希望可以帮到你。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板