美文网首页
Node.js学习笔记

Node.js学习笔记

作者: 5jing | 来源:发表于2019-04-15 23:27 被阅读0次

    虚拟机 vmware liniux?

    Node.js——服务器端语言

    http://nodejs.cn/
    https://nodejs.org/

    用途


    1. 中间层
      安全性——客户端直接连接主服务器,主服务器暴露给客户端是有安全隐患的
      性能——可以缓存,汇总请求,可以到处布点帮助用户提高访问速度
      降低主服务器复杂度——可以完成一些零散的功能,主服务器负责核心功能
    2. 小型服务
    3. 工具——babel,webpack是用nodejs实现的

    优势


    1. 便于前端入手
    2. 性能高
    3. 利于和前端代码整合

    搭建


    1. 换源
      npm install cnpm -g --registry=https://registry.npm.taobao.org
    2. 安装
      npm install xxx
      npm i xxx
      cnpm i xxx
    3. 删除
      npm uninstall xxx
      npm un xxx
      cnpm un xx

    怎么卸载低版本


    1.卸载node本身、删除nodejs目录
    2.手动删除C:\Program Files\nodejs\node_modules
    3.手动删除C:\users\你\node_modules\

    运行nodejs程序


    1. 进入需要运行的js文件目录
      cd x:
    2. 运行
      node x.js

    包:


    1. 安装
      cnpm i 包名称,例如 cnpm i multer
    2. 引入
      const multer = require('multer');
    3. 使用
      const http = require('http');
      let server = http.createServer(() => {   //请求
          console.log('请求来了');
      });
      //监听
      server.listen(8080);
      

    Nodejs基础结构和数据处理


    示例代码见:https://github.com/xiaowuzi2012/nodeJsStudy

    服务器

    1. 功能
      响应请求--处理接口
      数据交互--处理文件
      数据库--存储数据
    2. HTTP——协议
      HTTP 1.0 RFC-1945 非持久连接
      HTTP 1.1 RFC-2616 持久连接
      HTTPS RFC-2818 安全协议
      HTTP 2.0 RFC-7540 加密、头部压缩、服务器推送、管线操作、多路复用
    3. http报文结构
      header 大小<=32K
      body 大小<=2G
    4. 状态码
      1xx 信息
      2xx 成功
      3xx 重定向
      4xx 请求错误,客户端错误
      5xx 服务器错误
    5. 请求方式
      GET 获取,一次传输,数据放在url里面传输的,容量小<=32K
      POST 发送数据,一个请求多次传输,容量大
    6. 接收浏览器的GET数据——url
      url模块
      url.parse(req.url, true)=>{
      pathname, query
      }
      GET=>"/aaa/b?xx=xxx&xxx=xx"
      url.parse('xx')
    7. 接收浏览器的POST数据——body
      分几次
      let arr=[];
      req.on('data', buffer=>{
      arr.push(buffer);
      });
      req.on('end', ()=>{
      let buffer=Buffer.concat(arr);
      })
      POST=>"xx=xxx&xxx=xx"
      querystring.parse('xx')

    Node.js的模块系统

    1. 定义模块
      module 批量导出
      exports 单个导出
      require 加载模块
    2. 加载模块
      如果带有路径——去路径下面找
      如果没有路径——先找本项目的 node_modules文件夹,再找系统的node_modules文件夹

    相关文章

      网友评论

          本文标题:Node.js学习笔记

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