创建相应的文件夹

  1. 在根路径下创建package.json文件并在命令面板里安装相应的模块包(如下)

2.  在根路径下创建app.js,

  1. 在根路径下创建routes文件夹,并在文件夹中创建index.js

var express=require("express");

var router=express.Router();

var path=require("path");

var mysql=require("mysql");

var pool=mysql.createPool({

"host":"localhost",

"port":"3306",

"user":"root",

"password":"",

"database":"shuai",

"charest":"UTF8"

});

router.get("/",function(req,res){

res.render("index",{title:"sowayai",content:"点击登录"});

//        模板文件名

//  render渲染页面

// 使用render方法,将title变量传入index模板,渲染成 HTML网页。

});

router.get("/login.html",function(req,res){

res.sendFile(path.resolve("views","login.html"))

// resolve是path模块的方法。需要提前加载path模块。

// sendfile用于发送文件

});

// router.route("/login").get().post();

router.route("/login").get(function(req,res){

// route()方法可以接受访问路径作为参数。

console.log(1234);

res.redirect("/404.html");

// redirect()用于网址的重定向。

}).post(function(req,res){

req.on("data",function(data){

var jsonData=JSON.parse(data);

// res.end({username:jsonData.username,password:jsonData.password})

pool.getConnection(function(err,conn){

if(err){

console.log("数据库连接失败",err);

res.json({"code":5,"message":"数据库连接失败"});

conn.release();

}else{

var sql="select * from shuai04 where username='"+jsonData.username+"';";

conn.query(sql,function(err,result){

if(err){

console.log("sql语句执行失败",err);

res.json({"code":4,"message":"sql语句执行失败"});

conn.release();

}else{

if(result.length>0){

if(result[0].password==jsonData.password){

res.json({"code":0,"message":"登录成功"});

conn.release();

}else{

res.json({"code":1,"message":"用户名或密码错误"});

conn.release();

}

}else{

res.json({"code":2,"message":"用户未注册"});

conn.release();

}

}

})

}

})

})

})

router.get("/404.html",function(req,res){

res.sendFile(path.resolve("views","404.html"));

});

module.exports=router;

下图为去掉404.HTML的代码......

  1. 创建views文件夹

并在文件夹下创建index.html

在文件夹写login.html

创建404.html

手动搭建express框架的更多相关文章

  1. Vue nodejs商城项目-搭建express框架环境

    1.express-project 搭建express框架环境 安装express generator生成器 通过生成器自动创建项目 配置分析 安装 cnpm i -g express-generat ...

  2. ASP.NET Web API 2系列(一):初识Web API及手动搭建基本框架

    1.导言 随着Web技术的发展,现在各种框架,前端的,后端的,数不胜数.全栈工程师的压力越来越大. PC端,pad端,移动端App(安卓/IOS)的发展,使得前后端一体的开发模式十分笨重.因此,前后端 ...

  3. 手动搭建SSI框架

    SSI框架为struts.spring.ibatis,在该框架中,使用ibatis作为数据持久层,其中ibatis使用最新版本mybatis3. 注:本文使用版本:struts-2.3.4.sprin ...

  4. ABP架构学习系列三:手工搭建ABP框架

    由于公司的项目才接触到ABP这个框架,当时就觉得高大上,什么IOC.AOP.ddd各种专业词汇让人激情 澎湃,但在使用过程中碰到了许多坑,可能也许是没有去看源码导致的,但工作确实没有那么多时间让人去慢 ...

  5. 用nodejs的express框架在本机快速搭建一台服务器

    [本文出自天外归云的博客园] 简介 用express框架在本机搭建一个服务器,这样大家可以通过指定的url来在你的服务器上运行相应的功能. Express是一个基于nodejs的框架,我们可以用它来完 ...

  6. SSM框架手动搭建

    SSM框架手动搭建 创建web项目 IDEA创建Maven项目 [File]-->[new]-->[project..] 将项目变为web项目 [File]-->[Project S ...

  7. Nodejs之使用express框架搭建WEB应用

      首先创建一个index.js,在里面引入相关的中间件,如果没有这些中间件,则需要在nodejs里进入index.js所在的文件夹安装这些模块,安装命令:npm install express ex ...

  8. 手动搭建I/O网络通信框架2:Socket和ServerSocket入门实战,实现单聊

    第一章:手动搭建I/O网络通信框架1:Socket和ServerSocket入门实战,实现单聊 在第一章中运用Socket和ServerSocket简单的实现了网络通信.这一章,利用BIO编程模型进行 ...

  9. 手动搭建I/O网络通信框架1:Socket和ServerSocket入门实战,实现单聊

    资料:慕课网 第二章:手动搭建I/O网络通信框架2:Socket和ServerSocket入门实战,实现单聊 这个基础项目会作为BIO.NIO.AIO的一个前提,后面会有数篇博客会基于这个小项目利用B ...

随机推荐

  1. 修改Servlet模板,让Servlet更清新

    每次新建一个Servlet,都会有很多的代码跟注释,但是在实际开发中我们是用不到这些的,所以每次都得手动删除,非常麻烦,所以接下来讲一下如何让自己的Servlet看上去更清新: 首先找到你的Myecl ...

  2. 【经验分享(续篇)】Trachtenberg system(特拉亨伯格速算系统)

    之前有篇文章简单地介绍了Trachtenberg系统的乘法计算方法,地址在这里.针对一些特定的数字,Trachtenberg还发展出了更快的计算方法. 先来介绍乘数为11的速算方法.它的计算规则我们可 ...

  3. 实现 node_modules 共享

    参考:https://segmentfault.com/a/1190000000610038 Gruntjs 作为前端工程化工具,能够很好的对前端资源进行管理(校验,合并,压缩). 久之,发现一个问题 ...

  4. JavaScript 中对变量和函数声明的“提前(hoist)”

    hoist vt.升起,提起; vi.被举起或抬高; n.起重机,升降机; 升起; <俚>推,托,举; 这篇文章不讲英语,但是对于某些英语单词找不到很好的翻译,一上来就列出“hoist”这 ...

  5. linux下socket编程实例

    linux下socket编程实例一.基本socket函数Linux系统是通过提供套接字(socket)来进行网络编程的.网络的socket数据传输是一种特殊的I/O,socket也是一种文件描述符.s ...

  6. Wordpress上传文件 “无法建立目录wp-content/uploads/2018/25。有没有上级目录的写权限?”

    可能的原因有两个: wp-content/uploads 文件夹权限所限制 解决方法:修改wp-content/uploads 文件夹权限,可以借助ftp等工具: wp_options表中upload ...

  7. 《天书夜读:从汇编语言到windows内核编程》七 内核字符串与内存

    1)驱动中的字符串使用如下结构: typedef struct _UNICODE_STRING{ USHORT Length; //字符串的长度(字节数) USHORT MaximumLength; ...

  8. ionic基本环境的搭建

    1.下载版本大于6的Node.js https://nodejs.org/en/ 个人喜欢下载最新版本 安装成功后可以用命令行工具输入node -v和npm -v分别查看node.npm版本 2.下载 ...

  9. [转载] Mahout

    转载自http://hadoop.readthedocs.org/en/latest/Hadoop-Mahout.html# Mahout 12.1 简介 Mahout为推荐引擎提供了一些可扩展的机器 ...

  10. CLR之委托的揭秘(二)

    杂谈 在开始真正的代码之前,分析一下上周的一些工作内容,发现自己在代码上还是有很多小毛病需要纠正和去更改的,首先之前一直疏于文档的整理,几乎很少去写文档,第二对于接口开发过程中缺少一定的严谨性,很多问 ...