day21

1-nodejs 中有哪些常用的内置模块

  1、path模块 :

    用于处理文件路径。

  2、url模块

    在nodejs中url模块是用来解析url地址的

    url.parse(要解析的内容,是否查询字符串)

    是否查询字符串,默认是false,不进行单独解析;可以选填true,进行单独解析。返回值是一个解析好的对象

  3、http模块

    http.createServer(function(){});创建服务器。
    http.get('路径',callback);发送get请求。
    http.request(options,callback);发送请求。
    options:options是一个类似关联数组的对象,表示请求的参数,callback作为回调函数,需要传递一个参数。
    options常用的参数有host、port(默认为80)、method(默认为GET)、path(请求的相对于根的路径,默认是“/”。

  4.Express框架

    Express是一个nodejs的web开源框架,用于快速的搭建web项目。其主要集成了web的http服务器的创建、静态文本管理、服务器URL地址请求处理、get和post请求处理分发、session处理等功能。

使用方法,在cmd中打开你所想创建web项目的路径。然后输入Express appname即可创建一个名为appname的web项目。

2-常用的第三方模块   nrm:

    安装:npm install nrm -g

    查询下载地址:nrm ls

  gulp:

    用处:

      HTML、CSS、JS 文件压缩合并

      语法转换(ES6 -> ES5)

      公共文件抽离

      修改文件浏览器自动刷新

    使用 npm install gulp 下载 gulp 库文件

3-如何创建一个服务器   const http = require('http')   const url = require('url')   const app = http.createServer()   app.on('request',(req,res) => {       // 响应报文        res.writeHead(200,{        ...           'content-type':'text/html;charset=utf8'       })   })   app.listen(3000,() => {        console.log('服务器运行在3000端口...')   }) 4-http 搭建的服务相应给客户端的数据如果是中文,应该如何处理   app.on('/',(req,res)=>{     res.writeHead(200,{       'content-type':'text/html;charset=utf8'     })   }) 5-第三方 router 模块和 serve-static 如何使用,作用是什么?

  1.router
    功能是实现路由
    使用方法:

      获取路由对象
      调用路由对象创建路由
      启动路由
      使用代码:

        const getRouter = require('router')
        const router = getRouter();
        router.get('/index', (req, res) => {
          res.end('Hello World!')
        })
        server.on('request', (req, res) => {
          router(req, res, () => {})
        })
  2.sever-static
    其主要功能是实现静态资源的访问
    使用方法:

      引入serve-static模块获取创建静态资源服务功能的方法
      调用方法创建静态资源服务并指定静态资源服务目录
      启用静态资源服务功能
    使用代码如下:

      const serveStatic = require('serve-static')
      const serve = serveStatic('public'); // public为静态文件目录地址
      server.on('request', () => {
        serve(req, res)
      })

上一篇:js模块化规范—概念和模块化进化史以及模块化的问题


下一篇:MicroERP软件更新记录2.0