美文网首页
Node基础教程(1)

Node基础教程(1)

作者: subject_2619 | 来源:发表于2019-01-15 19:21 被阅读0次

    1.安装
    直接参考菜鸟教程http://www.runoob.com/nodejs/nodejs-install-setup.html
    2.编辑工具
    sublime Text, WebStorm等均可以。
    3.运行方式
    在Terminal执行 node xxx.js, xxx为包含代码的文件名。
    4.http模块与fs模块Demo
    http模块是服务模块,fs模块是读/删文件的模块,通过require命令便可以引入该模块。

    //引入http/fs模块
    var http = require('http')
    var fs = require('fs')
    
    //创建一个请求
    var server = http.createServer()
    //监听与处理请求
    server.on('request', function (req, res) {
      // 读取路由
      var url = req.url
      // 根据不同路由,返回不同response
      if (url === '/') {
    
        // 我们要发送的还是在文件中的内容
        fs.readFile('./resource/index.html', function (err, data) {
          if (err) {
            res.setHeader('Content-Type', 'text/plain; charset=utf-8')
            res.end('文件读取失败,请稍后重试!')
          } else {
            // data 默认是二进制数据,可以通过 .toString 转为咱们能识别的字符串
            // res.end() 支持两种数据类型,一种是二进制,一种是字符串
            res.setHeader('Content-Type', 'text/html; charset=utf-8')
            res.end(data)
          }
        })
      } else if (url === '/xiaoming') {
        // url:统一资源定位符
        // 一个 url 最终其实是要对应到一个资源的
        fs.readFile('./resource/ab2.jpg', function (err, data) {
          if (err) {
            res.setHeader('Content-Type', 'text/plain; charset=utf-8')
            res.end('文件读取失败,请稍后重试!')
          } else {
            // data 默认是二进制数据,可以通过 .toString 转为咱们能识别的字符串
            // res.end() 支持两种数据类型,一种是二进制,一种是字符串
            // 图片就不需要指定编码了,因为我们常说的编码一般指的是:字符编码
            res.setHeader('Content-Type', 'image/jpeg')
            res.end(data)
          }
        })
      }
    })
    
    server.listen(4000, function () {
      console.log('Server is running...')
    })
    
    

    相关文章

      网友评论

          本文标题:Node基础教程(1)

          本文链接:https://www.haomeiwen.com/subject/kizydqtx.html