一、nodejs基本概念和模块
1.nodejs 使用单线程,可以处理4万的并发量,通过非阻塞I/O事件驱动机制
2.nodejs 可以实现的功能,动态网站、接口、云计算平台、游戏开发、区块链开发、即时通讯
跨平台APP开发、桌面应用开发、云直播、互联网领域
3.工具visual studio code 可以选择node snippets安装node 提示工具
4.supervisor工具,可以监听文件目录的变化,当文件变化会重启nodejs,修改的代码会立即
生效。安装 npm install supervisor
用supervisor 代替node命令 >supervisor hello.js
5.http模块
const http = require('http'); 引入http模块
http.createServer()创建web服务
function (request, response) request获取客户端Url传来的信息
response 给浏览器响应信息
response.writeHead(200, {'Content-Type': 'text/plain'})设置响应头
response.end('Hello World');给页面输出一句话并结束响应
html冒号5生成Html一个结构
6.获取url里的值 ?name=zhangsan&age=20;
url.parse()方法,两个参数,第一个参数地址,第二个true
true,可以把query解析成一个对象;
要使用先获取Url模块require(url)
要获取?name...的参数 url.parse().query;
es6模板字符串 `姓名:${ getvalue.name }`
7.fs模块
文件系统模块-来操作服务器上的文件和目录
fs.stat 检测文件还是目录
// 检查文件目录还是文件,返回true或false
fs.stat('hello.js',function(err,stats) {
if(err){
console.log(err);
return false;
}
console.log(stats.isFile());
console.log(stats.isDirectory())
})
fs.mkdir 创建目录
fs.writeFile 写入文件
会在当前目录重新创建一个文件并且写入
fs.appendFile 如果文件存在追加文件,一般可以写日志,如果文件不存在会创建新文件
fs.readFile 读取文件
这样会打印一个buffer 16进制的数据,可以通过data.toString()转化
fs.readdir 读取目录
拿到一个文件夹下的所有目录 {css,javascript,index.html}
fs.rename 重命名
将html目录下的index.html文件名,改成news.html文件
还可以剪切文件,把一个文件剪切到另外一个目录下,并且还可以给它重命名
红线文件名必须有
fs.rmdir 删除目录,只能删除目录,不能删除文件
fs.unlink删除文件
nodejs,异步for循环拿不到信息
fs.createReadStream 从文件流中读取数据 -文件或数据特别大的情况用,如果小可以用readFile
fs.createWriteStream 写入数据,写入文件,以文件流的方式写入
管道流 :从一个流中获取数据并将数据传递到另一个流中通过readStream 和 writeStream来完成
如果没有output.txt文件会重新创建并写入
二、利用http模块、uri、path、fs创建一个web服务器
1.web服务器:可以放置网站文件让全世界浏览,可以放置数据文件进行下载,可以像浏览器等web客户端提供文档
三、nodejs.操作mongodb数据库
1.增加数据
2.查询数据