首页 > 代码库 > 部分NodeJs

部分NodeJs

一、cnmp的操作;

1、cnmp info jquery查询jquery的版本;

2、cnmp install jquery@1.11.1;安装;

3、cnmp list查询所有下载的内容;

4、cnmp list | grep jquery;只显示下载的juery;

二、在某个js文件中启用搭建服务器;

1、利用ES5创建服务器;

var http=require("http");

http.createServer(function(req,res){

res.writeHead(200,{"Content-Type":"text/html"});

res.end("你好,世界!");

}).listen(8888);

console.log("Server running at http://127.0.0.2:8888/");

 

2、利用ES6创建服务器;

const http=require("http");

const homename="127.0.0.1";

const port=3000;

const server=http.createServer(function(req,res){

res.statusCode=200;

res.setHeader("Content-Type":"text/plain");

res.end("你好!");

});

server.listen(port,hostname,()=>{

console.log("服务器创建成功!");

});

 

三、commonJS的用法

1、首先引入http模块;

var http=require("http");

2、再引入我们需要的模块;

var util=require("./util.js");//在同一个目录下的文件要用./的方式;

3、

 1  http.createServer(function(req,res){
 2 
 3       res.writeHead(200,{"Content-Type":"text/plain";utf-8});
 4 
 5        util.say(res);//一定是引入的模块;
 6 
 7        util.add(res);//一定是引入的模块;
 8 
 9        res.end();//res开始,并且res结束;
10 
11 }).listen(8000);
12 
13 console.log("修改成功!");

 

 

 

例子!!!!

var http=require("http");

var util=require("./util.js");

http.createServer(function (req,res) {

    res.writeHead(200,{"Content-Type":"text/plain;charset=utf-8"});

    util.say(res);

    util.add(res);

    res.end();

}).listen(8000);

console.log("你好!");

 

var util={

    say:function (res) {

        res.write("nihao");

    },

    add:function (res) {

        res.write(1+2+"");

    }

}

module.exports=util;

  

a、定义接口;再定义的时候如果用到var util={};的时候记住是json的格式;

b、暴露接口;module.exports=util;

四、npm的使用

1、全局安装模块;npm install n -g

2、项目依赖,通过--save加进去

3、开发依赖,线上不需要---通过--dev加进去

4、查看版本标识:cnpm outdated

五、协议

 1 https://www.baidu.com:8080/api.php?from=1000phone&course=nodejs#test
 2 
 3 {
 4 
 5      protocol: ‘https:‘,
 6 
 7      slashes: true,
 8 
 9      auth: null,
10 
11      host: ‘www.baidu.com:8080‘,
12 
13      port: ‘8080‘,
14 
15      hostname: ‘www.baidu.com‘,
16 
17      hash: ‘#test‘,
18 
19      search: ‘?from=1000phone&course=nodejs‘,
20 
21      query: { from: ‘1000phone‘, course: ‘nodejs‘ },
22 
23      pathname: ‘/api.php‘,
24 
25      path: ‘/api.php?from=1000phone&course=nodejs‘,
26 
27      href: ‘https://www.baidu.com:8080/api.php?from=1000phone&course=nodejs#test‘ }

 

六、事件监听

var EventEmitter=require("events");

在es6中定义一个对象的方法:class Player extends EventEmitter;

实例化一个player对象:var player=new Player();

监听的过程:两个

1、接收事件--->只能有一个接收事件;player.on("playing",(data)=>{

console.log(`正在播放:${data}`);

});

2、派发事件---->可以有多个区派发;player.emit("playing","相见恨晚");

playing("playing","情在");

七,文件管理

共有7个方法:

1、查看文件状态,()

 1 var fs=require("fs");
 2 
 3 fs.stat("所要查看的文件名称",(err,stats)=>{
 4 
 5 if(err){
 6 
 7 console.log(err)
 8 
 9 }else{
10 
11 console.log(`目录:${stat.isDirectory()}`);
12 
13 console.log(`文件:${stat.isFile()}`);
14 
15 }
16 
17 })

 

2、创建目录:利用fs.mkdir;

3、写入文件,并写入内容;包括连个方面;

  a:开始没有文件,创建文件并写入内容;fs.writeFile;

  fs.writeFile("创建的文件路径及名称","写入文件得内容",()=>{})

  b:开始有文件,只写入内容;

  fs.appendFile("写入得文件路径及名称","写入文件得内容",()=>{})

4、读取文件:利用fs.readFile("文件的路径和名称","utf-8",()=>{});

如果不写第二个则会出现返回来的为buffer类型的数据;但是如有没有此文件则会出现报错;

5、读取文件夹;fs.readdir("文件名称",(=>{});

6、文件重命名;fs.rename("原来文件名称","更改后文件名称"()=>{});

7、删除文件(包括两个步骤)

  a:删除文件里面的内容;

  

 1 fs.readdirSync("所删除的文件夹").map((item)=>{
 2 
 3   fs.unlink(`所删除的文件夹/${item}`,(err)=>{
 4 
 5   if(err){
 6 
 7   console.log(err)
 8 
 9   }else{
10 
11   console.log("成功!");
12 
13   }
14 
15   })
16 
17   });

 

  b:删除文件夹

  fs.rmdir("所要删除的文件",(err,data)=>{

  if(){}else{};

  })

八、stream

1、--save项目以来

2、--save-dev项目开发以来;

3、.pipe上一层的输出作为下一层的输入;

4、.zlib压缩模块;

  zlib.createGzip();

部分NodeJs