栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Express框架

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Express框架

目录

1,Express介绍

        1.1 介绍

        1.2 服务器的作用

2,Express安装和使用

        2.1 express-generator

         2.2 Express服务器项目结构说明

3,Express路由

        3.1 路由概念

        3.2 基础用法

        3.3 路由方法

        3.4 express连接后台MySQL数据库

4,response响应对象

        4.1 send方法

5,request请求对象

        5.1 获取浏览器地址栏中的参数

        5.2 获取表单提交的值

        5.3 常见API


1,Express介绍

        1.1 介绍

        Express是基于 node.js的一个web服务器框架,它可以帮助你快速创建一个web+ 移动端 各类项目服务器

        1.2 服务器的作用

             (1)存放站点网站,响应网页给请求的用户浏览器

             (2)提供数据接口,给客户端AJAX进行数据响应       

2,Express安装和使用

        2.1 express-generator

(1)安装express-generator(全局安装)

npm i express-generator -gnpm i express-generator -g

可切换为淘宝镜像服务器提高下载速度(cnpm与此意义相同)

npm config set registry https://registry.npm.taobao.org

可测试是否切换为淘宝镜像服务器

npm config get registry

如图即设置成功

(2) 通过命令创建express项目

(3)安装依赖包(项目默认没有node_modules无法启动)

                 npm i  安装所有依赖

                 npm start 启动服务器(如下图启动成功)

         2.2 Express服务器项目结构说明

                bin   核心文件,express项目启动文件  可修改端口

                public   公共资源(存放站点网页,css,js,图片等静态资源),浏览器可根据地址直接访问的资源

                routes  路由器,处理浏览器发出的各种请求,并响应(存放服务器接口)

 //改动routes下的任何代码都要重启服务器才能生效

//http协议有8种请求方式 常用get post 不常用 head trace options connect put delete

//router.要监听的请求方式

//参数1 监听的接口 参数2 监听成功的回调函数

// router.get('/login',(req,res)=>{

// req.body  获取post参数

// req.query 获取get参数

// })

                app.js  入口文件

                package.json   项目描述文件

                package-lock.json   依赖详细文件

3,Express路由

        3.1 路由概念

                路由是指如何定义应用的接口以及如何响应客户端的请求。

        3.2 基础用法
var express = require('express');
var router = express.Router();


 router.get('/', function(req, res, next) {
   res.render('index', { title: 'Express' });
 });

        3.3 路由方法
路由与HTTP 请求方法(GET、POST)相关联。

为应用“/”路径定义的 GET 和 POST 请求:
// 处理get请求方式
app.get('/', function (req, res) {
  res.send('处理get请求');
});

// 处理post请求方式
app.post('/', function (req, res) {
  res.send('处理post请求');
});

app.all() 是一个特殊的路由方法,all相当于既可以处理GET,也可以处理POST。

app.all('/, function (req, res, next) {
  res.send('任意方式的请求');
});

        3.4 express连接后台MySQL数据库
1. 下载mysql模块
	npm i mysql -S
	
2. 引入
	var mysql = require('mysql')

3. 封装连接函数
	function createCon(){
		return mysql.createConnection({
			port: 3306,//数据库端口
			host: 'localhost',	//数据库ip
			user: 'root',	//数据库账号名
			password: '自己的数据库密码',
			database: 'xxxx'	//要连接数据库名字!
		})
	}
4. 调用封装的连接函数, 连接数据库, 执行sql
	
	router.xxx('/test', (req, res) => {
		...

		
		var con = createCon()	//新建一个连接对象
		con.connect()	//连接到数据库
	
		//2. 执行sql
		con.query('SQL语句', function(err, data){
			if(err) return 

			//sql执行成功!
			//如果查询select语句,data是一个数组, 其他语句(update等)data没有用
		})

		//3. 断开数据库连接,释放内存
		con.end()	

	})
	

4,response响应对象

        4.1 send方法
send(data) 可以返回任意类型数据。
res.send({ some: 'json' });// json数据
res.send('

some html

');//普通文本

5,request请求对象

        5.1 获取浏览器地址栏中的参数

                语法:req.query.参数名

                比如:http://localhost:3000/user?name=‘Lisa’

                          req.query.name;

        5.2 获取表单提交的值

                post提交    req.body.参数名

                get提交    req.query.参数名

        5.3 常见API

                (1)req.body  获取post参数

                (2)req.query 获取get参数

                (3)req.hostname/req.ip   获取主机名和ip地址

                (4)req.protocol    获取协议类型

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/724890.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号