NodeJS的方法、原生路由
-
querystring
- 功能:
- 核心方法
- parse:将String – > Object
var str = 'http://www.baidu.com:8080/001?a=1&b=2#hash=20' var obj = qs.parse( str,'?','&' )
- stringify:将Object -> String
- escape:将中文字符编码
- unescape:将中文字符解码
-
http
核心方法
get
request
小爬虫-
使用数据请求一段内容,然后将这段内容做数据清洗,最后在通过后端服务器发送到前台页面,步骤:
- 数据请求, 获得数据
- 数据清洗 ( 工具 cheerio )
- 安装 cheerio
$ cnpm i cheerio -S
- 使用cheerio
- 发送给前台
-
-
events
声明事件myEvents.on('aa',function(){ console.log( 'hello Node.js' ) })
事件的触发
myEvents.emit('aa')
-
fs
fs是Node.js中文件系统-
功能: 操作文件或是目录
-
文件:
增: writeFile(路径,内容 , 错误优先的回调)
删:appendFile(路径,内容,错误优先的回调)
改:readFile(路径,内容,错误优先的回调)
查:unlink(路径,错误优先的回调) -
目录
增:mkdir(路径/文件名,错误优先的回调)
删:rename(路径,更改的路径,错误优先的回调)
改:readdir(路径,编码,错误优先的回调)
查:rmdir(路径/文件名,错误优先的回调)
-
-
stream
stream 流: 减少内存消耗, 增加效率可读的流
可写的流举例: 压缩包的创建
var fs = require( 'fs' ) var zlib = require('zlib') // 创建压缩包 var readeStream = fs.createReadStream( './dist/1.txt' ) var writeStream = fs.createWriteStream( './dist/1.txt.gz' ) var gzip = zlib.createGzip() // 空压缩包 readeStream .pipe( gzip ) .pipe( writeStream )
名词:
pipe --> 管道流
-
Node.js原生路由
示例:var http = require( 'http' ) var fs = require( 'fs' ) http.createServer( function ( req, res ) { switch ( req.url ) { case '/home': res.write('home') res.end() break; case '/mine': res.write('mine') res.end() break; case '/login': fs.readFile( './static/login.html',function ( error , data ) { if ( error ) throw error res.write( data ) res.end() }) break; case '/fulian.jpg': fs.readFile( './static/fulian.jpg','binary',function( error , data ) { if( error ) throw error res.write( data, 'binary' ) res.end() }) break; default: break; } }).listen( 8000, 'localhost', function () { console.log( '服务器运行在: http://localhost:8000' ) })