zoukankan      html  css  js  c++  java
  • nodejs=>day_2

    一、第三方模块安装                                

    本地安装:

          npm install xxxx

    全局安装:

           npm install xxxx -g

     

    安装模块时,用什么方式:

     

    如果模块需要被当作全局命令来使用,就全局安装

    如果只是引入使用,就本地安装。

     

    url网址字符串的解析:

    url模块 :

    parse方法:是将整个url字符串转换为对象

           如果第二个参数为true,参数部分也会被转换为对象。

    format方法:功能相反

     

    querystring模块:

    parse方法:将参数部分转换为对象

    stringify():功能相反

     

     

    post请求和get请求的区别:

     

    post请求的参数会封装在请求体中,比较安全

    get请求的参数直接添加在请求的url中。

     

           原生方式处理post请求:

          

           req.on(“data”,function(chunk){

    })

     

    req.on(“end”,function(chunk){

          

    })

     

    二.mime模块

     

    该模块用于设置文件的MIME类型,

    使用方法:

    var   mime = require(“mime”);

          var  mimiType = mime.lookup(filePath)

     

    MIME类型:

    因为服务器和客户端之间通信的数据是二进制。因此,如果服务器返回文件给客户端,不设置文件的MIME类型,那么浏览器不知道应该怎么处理传过来的数据。

    为了使所有的浏览器都能正确处理文件,服务器在返回数据的时候,需要在响应头上添加文件的MIME类型:

    {

                “Content-type”:”text/html”

    }

     

    三.formidable模块

     

    原生的Node.js处理POST请求比较复杂,Node将请求体分成多个数据块进行接收。

    需要监听request对象的data事件和end事件。

     

    为了简化POST请求和文件提交,formidable模块将表单处理进行了封装和优化。

    使用方法:

    var formidable = require(“formidable”);

      //创建表单处理对象
    var form = new formidable.IncomingForm();
      //设置文件上传的路径
    form.uploadDir = __dirname + "/upload";

    form.parse(req, function(err, fields, files) {

    //从fileds中取出字符串参数
    var username = fields.username;
    var passwd = fields.passwd;

    //将上传的文件的名字改成上传之前的文件名
    fs.rename(files.myicon.path, __dirname + "/upload/" + files.myicon.name, function(err) {
      if (err) {
        console.log(err);
      } else {
        console.log("修改文件名字成功!");
      }
    });
    //从files中取出文件
    console.log(files.myicon);
    res.end();

    }

     

    四.ejs模块

     

    http模块除了可以搭建静态站点以外,还可以生成动态网页。一般和模板引擎一起使用。常用的模板引擎有ejs,jade等。

     

    模板引擎的工作原理:

     

     

    Node.js中使用ejs生成动态页面步骤:

     

    1. 准备数据
    2. 准备模板文件
    3. 读取模板文件内容,
    4. 使用ejs的render方法生成html页面
    5. 将动态返回给客户端

          

    你好!如果你有什么更好的建议或意见,请在评论区留言。感谢你的阅读!
  • 相关阅读:
    一些业内有名的网站收集
    WCF重载
    FCKEditor fckconfig.js配置,添加字体和大小 附:中文字体乱码问题解决
    查询第几条到第几条的数据的SQL语句
    SPOJ 9939 Eliminate the Conflict
    UVA 10534 Wavio Sequence
    HDU 3474 Necklace
    POJ 2823 Sliding Window
    UVA 437 The Tower of Babylon
    UVA 825 Walking on the Safe Side
  • 原文地址:https://www.cnblogs.com/YCxiaoyang/p/7512025.html
Copyright © 2011-2022 走看看