分享

Node模块的基本使用(2018/11/06)

 印度阿三17 2019-09-12
node模块的引用顺序 https://blog.csdn.net/qq_24839991/article/details/79970808 当require('xxx')一个模块时:              优先加载核心模块: 如果显示指定文件模块扩展名,则在该路径下查找该模块是否存在;              以路径形式加载文件模块:如果未显示指定文件模块扩展名,则在该路径下,依次查找以.js、.json、.node为扩展名的模块是否存在;                require(./xxx.json)引过来的是一个对象数据类型,所以可以用 变量.属性的方法来取值 console.log(a.a)
内置http模块 http.createServer  //方法--  该函数用来创建一个HTTP服务器,并将 requestListener 作为 request 事件的监听函数。 由于该方法属于http模块,使用前需要引入http模块 var http= require(“http”)  const http = require("http");//引入http模块 var ser = http.createServer((req,res)=>{//创建http服务    req---请求对象,res---响应对象        res.writeHead(200,{"content-type":"text/html;charset=utf8"});//发送http头部   http状态值200  设置内容类型 ,告诉浏览器用何种方式来解析之后的代码        res.write("<h1>hello</h1>");        res.end("<p>hi</p>")//res指定了响应头,响应体内容为node.js,用end结束。    }) ser.listen(3000,()=>{//最后调用listen函数,监听3000端口。     console.log(`listen${ser.address().port}...`) })
  前后端分离                 后端写json数据 然后在js中获取json数据的文件夹 接受json中的所有数据并允许跨域 将json对象转换成json字符串 监听端口号为5000的端口 把数据传到这个端口中                前端用ajax获取到5000端口获取数据 1第一步为json数据 a.json { "stus":[    {"name":"张三",     "age":15    } ] }   2第二步为后端封装接口 const http = require("http"); var stus = require("./a");     var ser = http.createServer(function(req,res){     res.writeHead(200,{"content-type":"application/json","Access-Control-Allow-Origin":'*'})       res.end(JSON.stringify(stus)); })   ser.listen(5000,()=>{     console.log("listen " ser.address().port "..."); })   3第三步为前端调取数据 $.get({          var temUl =$("<ul>");          res.stus.map((item)=>{               temUl.append("<li>姓名:" item.name " 年龄:" item.age "</li>");          })          $("#box").append(temUl);      })
  nodejs模块中的------fs模块              fs模块用于对系统文件及目录进行读写操作            https://www.cnblogs.com/starof/p/5038300.html   1.读取文件的三种方式     ①异步读文件            var const = require("fs");//引入fs模块         fs.readFile("文件的路径","utf-8",(err,data)=>{// readFile的回调函数接收两个参数,err是读取文件出错时触发的错误对象,data是从文件读取的数据。                 if(err){                       console.log("失败")                  }                                  console.log(data) });        ②同步读文件               var const = require("fs");             var content = fs . readFileSync("文件的路径","utf-8");             console.log(content)        ③流的方式读取文件           var const = require("fs");          var rs = fs.createReadStream("文件路径")          var str = "";          rs.on("data",(thunk)=>{//on是事件监听的方法                     str =thunk; })         rs.on("end",()=>{         console.log(str); })     2.写入文件的三种方式 ①异步写入文件   var const = require("fs"); fs.writeFile("文件路径","内容",()=>{//写入文件内容(如果文件不存在会创建一个文件),写入时会先清空文件 console.log("写入成功") });   ②同步写入文件   var const = require("fs"); fs.writeFileSync("文件路径","内容");   ③流的方式写入文件   var ws = fs.createWriteStream("文件路径"); ws.write("内容","utf-8"); ws.end(); ws.on("finish",()=>{             console.log("写入完成") }) 3.显示一个网页(在CMD运行后访问 localhost:3000) ①同步显示   const http = require("http"); const fs = require("fs"); http.createServer((req,res)=>{         res.writeHead(200,{"content-type":"text/html;charset=utf8"});                     var str = fs.readFile("文件路径","utf-8",(err,data)=>{                 if(!err){                         res.end(data);             } }) }).listen(3000,()=>{             console.log("listen  3000.....") })   ②异步显示   const http = require("http"); const fs = require("fs"); http.createServer((req,res)=>{         res.writeHead(200,{"content-type":"text/html;charset=utf8"});                 var str = fs.readFileSync("文件路径","utf-8");         res.end(str) }).listen(3000,()=>{             console.log("listen  3000.....") })     ③流的方法显示   const http = require("http"); const fs = require("fs"); http.createServer((req,res)=>{         res.writeHead(200,{"content-type":"text/html;charset=utf8"});                fs.createReadStream("文件路径").pipe(res);  // pipe是管道 }).listen(3000,()=>{             console.log("listen  3000.....") })   4.在本地拷贝一个视频(大文件的拷贝) fs.stat 表示文件的状态   const fs = require("fs"); var rs = fs.createReadStream("./w.wmv");//读取这个文件 var ws = fs.createWriteStream("./wcopy.wmv");//创建一个copy文件 var size = 0 ;//文件的总大小 var len = 0;//当前读取的文件的大小 fs.stat("./w.wmv",(err,info)=>{//info是信息情报        if(!err){               size = info.size;//获取文件的大小        }        rs.on("data",(thunk)=>{               console.log((len/size*100).toFixed(2) '%')//输出加载进度               ws.write(thunk)        })        rs.on("end",()=>{               console.log("copy over")        }) })     来源:https://www./content-1-449151.html

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约