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

首先创建一个index.js,在里面引入相关的中间件,如果没有这些中间件,则需要在nodejs里进入index.js所在的文件夹安装这些模块,安装命令:npm install express express-static cookie cookie-session body-parser multer mysql,并且创建好www文件夹和views文件夹,www文件夹放了所有要读取的css.js.img等,views文件夹下放了所有要渲染的ejs模板

const express = require("express");//框架
const expressStatic = require("express-static");//指定路径读取静态文件
const cookie = require("cookie");//解析cookie数据
const cookieSession = require(‘cookie-session‘);//基于cookie的session数据,保存在request.session
const bodyParser = require("body-parser");//解析post数据,保存在request.body中
const consolite = require("consolite");//模板适配器
const multer = require("multer");//文件上传
const mysql = require("mysql");//数据库const db = mysql.createPool({//建立数据库连接池  host:‘localhost‘,//主机地址  name:‘root‘,//数据库账号  password:‘q791469353‘//数据库密码  database:‘officialwebsite‘//数据库名称});
//第一步,搭建服务器并监听端口
var app = express();
app.listen(8080);//这里监听端口8080

//第二步,指定路径读取静态文件
app.use(expressStatic(‘./www‘));//这里指定在./www下读取所有静态文件

//第三步 ,初始化session
app.use(cookieParser(‘asdhkj‘));//将cookie数据解析
var array = [];//随机生成数组用于加密session
for(var i=0;i<1000;i++){
    array.push(Math.random());
}
app.user(cookieSession({
     name:‘session名称‘,
     keys:array,//keys表示session加密的字符
     maxAge:5*60*1000//设置session的有效时间,以毫秒为单位
}));

//第四步,解析post传过来的数据,保存在request.body中,get方法express框架将数据保存在了request.query中
app.use(bodyParser.urlencoded({extend:false}));
//第五步,文件上传数据解析
app.use(multer({dest:“保存文件上传的路径”}).any());//any()方法表示接收上传任何类型的文件
//第六步,适配模板
app.set(‘"views engine","text/html");//适配模板引擎后将其识别为html文件
app.set("views","./views");//指定模板在views文件夹下面,该文件夹下面以ejs为结尾的模板,其中语法:<% js代码 %>表示执行js代码但不输出, <%= js代码 %>表示执行js代码并输出  ,<%- js代码%>表示转义输出js代码 ,<% include ‘其他模板路径‘%>表示在该模板中的该段引入模板的代码
app.engine("html",consolite.ejs);//使用ejs模板引擎=

//以上是应用搭建的部署,接下来对请求做处理app.get("/",(request,response)=>{//表示访问localhost:8080/时做出的响应,request表示浏览传输过来的数据,response表示服务器响应给浏览器的数据  response.render("index.ejs",{});//表示渲染index,ejs模板,并传一个空的对象给该模板});app.get("/sign_in",(request,response)=>{  var name = request.query.name;//获取get方法传过来的数据  db.query(`SELECT * FROM xxx表 WHERE 字段 = ${name}`,(err,data)=>{//对数据库进行查询,参数为SQL语句,${变量}表示在该字符串中使用该变量,此时字符串应为反双引号:``    //如果出现错误,则err不是空的对象,否则为空对象,并且查找到的数据在data中    if(err) throw err;    else{      res.render("sign-in.ejs",{data:data});//给模板传入找到的data数据    }  });});app.post(‘/sign-up‘,(request,response)=>{  var post = request.body;//获取post传过来的数据  if(post.name == xx){    response.send(‘xxx‘);//代码执行成功后,给前端调用ajax方法的回调函数传递参数};

app.get(‘/test‘,(request,response,next)=>{//以test为例,用next()方法渲染test.ejs模板  if(request.query.name == ‘xxxx‘){  next();//执行下一个相同请求的函数}app.get(‘/test‘,(request,response)=>{  render(‘/test.ejs‘,{});});});

});

原文地址:https://www.cnblogs.com/Liqian-Front-End-Engineer/p/11371684.html

时间: 2024-10-03 00:44:06

Nodejs之使用express框架搭建WEB应用的相关文章

React第六篇: 搭建React + Router + antd + nodejs + express框架搭建(nodejs做前后端server)

前提: nodejs >= 10.0;  这里不推荐用官网的yarn安装antd的模块,因为后续会出错,错误如图: 也不推荐用npx方法来搭建react骨架,也会出错,让我们开始吧!!   前端React+Antd框架搭建 1.安装并启动create-react-app骨架应用 打开cmd按顺序执行以下指令: npm install -g create-react-app   (全局安装create-react-app, 默认会安装在C盘个人用户下) create-react-app my-ap

node.js基于express框架搭建一个简单的注册登录Web功能

这个小应用使用到了node.js  bootstrap  express  以及数据库的操作 :使用mongoose对象模型来操作 mongodb 如果没了解过的可以先去基本了解一下相关概念~ 首先注明一下版本,因为express因为版本的不同使用的方式也不同,我这算是目前最新的了吧 还没有装express的可以移步到这里 看看express框架的获取安装 1.简单地项目初始化 进入你的nodejs安装路径下边,如图,然后执行命令  express -e test  (这里把项目名设置为test

SSM框架搭建web服务器实现登录功能(Spring+SpringMVC+Mybatis)

初学java EE,虽然知道使用框架会使开发更加便捷高效,但是对于初学者来说,感到使用框架比较迷惑,尤其是各种jar包的引用.各种框架的配置.注解的使用等等. 最好的学习方法就是实践,于是下载了一个现成的DEMO,通过简单的修改先成功在自己电脑上跑起来,然后再逐个文件进行分析学习,最终才能从总体的高度上掌握框架的运行机制和配置方法,这样才能在实际运用中灵活配置,不会再局限于示例框架中. SSM框架搭建流程 SSM框架Web程序的流程 上面链接总结的流程很好,但是该流程没有加入DAO这一层,经过分

Nodejs环境与express框架

初次使用nodejs,水平有点粗糙. 系统环境 OS X Yosimite 10.10.2 包:node-v0.12.4.pkg 安装: 下载并并运行安装,完成后在 /usr/local/bin 下会生成 node 文件 和 npm 链接,确保 /usr/local/bin/ 包含在 $PATH 变量之类, 以便直接使用 node 和 npm命令. 通过npm install安装的module被下载到 /usr/local/lib/node_modules 下: # npm install xx

(六)、nodejs中的express框架获取http参数

express获取参数方法: 一.通过req.params app.get('/user/:id', function(req, res){ res.send('user ' + req.params.id); }); 也可以: app.get('/user/:id', function(request, response){ response.send('user ' + request.params.id); }); 二.通过req.body var app = require('expre

django框架搭建web服务

一.工具 环境:windows 7 python 2.7.7     下载地址:https://www.python.org/downloads/release/python-2713/   ps:这里提供的地址是当前的最新2.7版本,应该差别不大 django-1.11.3   下载地址:https://www.djangoproject.com/download/ 二.安装 1.python安装,下载好安装文件,一路next即可.安装完成之后,将安装目录加入到环境变量之中. 环境变量添加方法

express框架开发案例

express是基于Node.js平台的web应用开发框架,用express框架开发web项目可以直接构建整个项目框架并且将前端页面跟后台贯穿起来,用起来还是灵活的:最近刚开始学习,写篇博客总结下,涉及到的东西比较多比较杂,可能会有遗漏什么的,有意见或者建议欢迎提出....     要开始这个项目,首先要对express框架.jade.html.bootstrap.js.jQuery.mysql数据库这些知识点有一定的基础. 目录: 一.项目环境准备 二.mysql数据库设计 三.项目编写 一.

初步认识Express框架渲染视图

给出一个简单的例子,讲述模板渲染的基础功能 在nodejs中使用express框架,默认的是ejs和jade渲染模板,以下是以ejs模板进行解析 1.ejs 模板安装 npm install ejs 目录安装好了之后,如何调用了,如下所示: app.set("view engine","ejs"); 2.默认的ejs模板只支持ejs为扩展名的文件,如果需要用html方式去书写,需要修改模板引擎,也就是express的engine函数 3.engine注册模板引擎的函

NodeJS学习笔记(一)——搭建开发框架Express,实现Web网站登录验证

JS是脚本语言,脚本语言都需要一个解析器才能运行.对于写在HTML页面里的JS,浏览器充当了解析器的角色.而对于需要独立运行的JS,NodeJS就是一个解析器.每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情.例如运行在浏览器中的JS的用途是操作DOM,浏览器就提供了document之类的内置对象.而运行在NodeJS中的JS的用途是操作磁盘文件或搭建HTTP服务器,NodeJS就相应提供了fs.http等内置对象.E