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();

/* GET home page. */
 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('<p>some html</p>');//普通文本

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    获取协议类型

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

stay calm~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值