nodejs(03)

1.第三方中间件—body-parser
可以将post请求的数据解析为对象
使用中间件

const bodyParser=require('body-parser');
//urlencoded  是将post请求的数据解析为对象
server.use(bodyParser.urlencoded({
	//默认使用的是qs模块 如果系统模块能解决就用系统提供的方法解决 不使用qs模块设置如下代码使用的是官方提供的querystring模块
	extended:false
}));

在路由中获取数据 req.body 返回对象的格式
2.MySQL模块
(1)普通连接

//创建连接对象,传递mysql的IP地址/域名、端口、用户名、密码、使用的数据库
var connection=mysql.createConnection({

});
//执行连接
connection.connect();
//callback回调函数 两个参数 一个是err错误时返回的内容 另一个是返回的结果result
connection.query('SQL语句',callback);
//执行完所有的SQL语句 关闭连接
connection.end();

(2)使用连接池

创建连接对象,传递mysql的IP地址/域名、端口、用户名、密码、使用的数据库、设置连接池的大小(connectLimit:20)
var pool=createPool({
});
//callback回调函数 两个参数 一个是err错误时返回的内容 另一个是返回的结果result
pool.query('SQL语句',callback);

—————————————————————————————————————————————————————
nodejs补充内容
1.缓冲区(buffer)
在内存中存储数据的区域,存储网络传输时的资源
2.模块系统
模块是一个预定义好的功能体,在nodejs下,每一个文件都是一个模块

//在每个js文件中都包含一个构造函数
(function(exports,require,module,__filename,__dirname){
		//程序员编写区域
		//文件完整路径及名称
		console.log(__filename);
		//文件的完整路径
		console.log(__dirname);
		//引入模块    ./ 表示当前目录下
		require('');
		//module 指当前系统下的模块
			module.exports 当前模块的导出对象(公开的内容),可以供其他模块使用的方法及属性
		exports 等价于 module.exports 但不是一个东西
		
})

文件模块和目录模块

(1)查询字符串
querystring.parse() 将字符串解析为对象
querystring.stringify() 将对象转为字符串
(2)url模块——url
parse()
protocol 协议
hostname 主机(域名/IP地址)
port 端口
pathname 服务器端路径
query 查询字符串
format () 将对象转换为url格式 query属性必须使用 对象的形式
(3)全局函数
开启定时器
var timer = setTimeout(回调函数,间隔是毫秒);
清除定时器
clearTimeout(timer);
nextTick() 与 setImmediate() 区别
在这里插入图片描述

(4)文件系统模块——fs
用于操作服务器端目录 ,例如:创建目录,删除目录,读取目录,创建文件,删除文件,读取文件…

创建目录
fs.mkdir(路径,回调函数);
删除目录
fs.fmkir(路径,回调函数);
读取目录
fs.readdir(路径,回调函数)   ——异步
fs.readdirSync('路径')		   ——同步
**同步异步区别**

同步会阻止代码执行,只有运行完才会执行后面的代码
通过返回值 获取结果
异步不会阻止代码执行,在代码的最后执行
通过回调函数获取结果 常用于一些耗时的操作
写入文件
fs.writeFile(路径,写入的数据,回调函数);
如果文件不存在,则会创建文件并写入数据,如果文件已存在则会清空文件数据,然后写入

删除文件
fs.unlink(文件路径,回调函数);/unlinkSync(文件路径);
判断文件是否存在
fs.existsSync(文件路径); 异步方法已被废弃
追加写入
fs.appendFile(文件路径,回调函数); 异步 +Sync 去除回调函数
如果文件不存在 则会创建文件 如果文件存在 则会追加数据
读取文件
fs.readFile(文件路径,回调函数);
读取的数据格式 是Buffer格式 需要转义为字符串的格式

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值