NodeJS的方法、原生路由

NodeJS的方法、原生路由

  1. querystring

    1. 功能:
    2. 核心方法
      • 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:将中文字符解码
  2. http
    核心方法
    get
    request
    小爬虫

    • 使用数据请求一段内容,然后将这段内容做数据清洗,最后在通过后端服务器发送到前台页面,步骤:

      1. 数据请求, 获得数据
      2. 数据清洗 ( 工具 cheerio )
      3. 安装 cheerio $ cnpm i cheerio -S
      4. 使用cheerio
      5. 发送给前台
  3. events
    声明事件

    myEvents.on('aa',function(){
           
      console.log( 'hello Node.js' )
    })
    

    事件的触发

    myEvents.emit('aa')
    
  4. fs
    fs是Node.js中文件系统

    • 功能: 操作文件或是目录

    • 文件:
      增: writeFile(路径,内容 , 错误优先的回调)
      删:appendFile(路径,内容,错误优先的回调)
      改:readFile(路径,内容,错误优先的回调)
      查:unlink(路径,错误优先的回调)

    • 目录
      增:mkdir(路径/文件名,错误优先的回调)
      删:rename(路径,更改的路径,错误优先的回调)
      改:readdir(路径,编码,错误优先的回调)
      查:rmdir(路径/文件名,错误优先的回调)

  5. 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 --> 管道流
     

  6. 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' )
     })
    

你可能感兴趣的:(01-Nodejs,NodeJS的方法与原生路由)