美文网首页
nodejs内置模块之http

nodejs内置模块之http

作者: 刘宏儿 | 来源:发表于2019-01-24 15:59 被阅读0次

nodejs内置模块指的是除默认提供的语法之外,提供的美容,无需下载,直接引入,引入只写名称即可

引入的代码

var http=require("http");

http可以充当两个角色,一个是服务器,一个是客户端
①当他充当服务器角色时
客户端向他发送请求,
http的createServer(创建服务方法),每次接收请求时,回调函数都会执行,将请求和响应的对象作为实参传入,createServer执行完毕会返回一个对象,调用对象下的listen方法设置监听端口号,每次更改代码都需要重新启动服务。
为了避免多次启动,全局下载nodemon包,实时重新启动服务,无需手动重启服务,简便操作。
npm install nodemon -g
输入nodemon http.js即可实现自动重启
后缀js要加

var http = require("http");
http.createServer(function(req,res){
                  res.writeHead(200,{"Content-type":"text/html;charset=utf-8"});//200表示成功的状态码 设置文本编码
                  res.write("hello");//使用res.write写的内容会响应并不会终止请求
                  res.end("响应并终止请求");//使用res.end响应并终止请求
}).listen(8080);//在网页中输入localhost:8080即可看到re.write和res.end写的内容

②作为客户端,是向其他服务端口请求数据

var http=require("http");
http.get("http://www.baidu.com",function(res){
            var str="";
                res.on("data",function(chunk){//需要监听数据,一点一点的拼才能拿到最终的数据
                          str+=chunk;
});
res.on("end",function(){
              console.log(str);
})
})

因为这样写过程过于繁杂,所以引入第三方插件库request,参考老师的node-request模块,下载引入,这个模块是对http请求的封装,用于http请求作为客户端,发送请求更方便。

var request = require("request");
request("http://www.baidu.com",function(error,res,body){
                    console.log(body);//body拿到的就是网页上的数据
})

结合爬虫的思想,将拿到的一堆找到想要的,放到自己的数据库中,借助cheerio包
下载引入

var request=require("request");

var cheerio=require("cheerio");

request("https://www.jianshu.com/u/bdce7da974c5",function(error,res,body){

    var $=cheerio.load(body);

    var arr=[];

    $(".content .title").each(function(){

        arr.push({
            title:$(this).text(),
            des:$(this).next().text()
        })

    });

    console.log(arr);

})

相关文章

  • nodejs内置模块之http

    nodejs内置模块指的是除默认提供的语法之外,提供的美容,无需下载,直接引入,引入只写名称即可 引入的代码 ht...

  • 手写一个后端服务器

    一、nodejs写服务器 var http = require('http') //是nodejs的内置模块 - ...

  • nodejs-http内置模块

    安装http协议 npm i http -S 启动web服务器 运行 只有80端口才不写,其它都要加端口号http...

  • nodejs-模块

    nodejs模块 一、nodejs模块分类 1.核心模块 Core Module、内置模块、原生模块 fs模块 p...

  • nodejs模块

    nodejs模块 nodejs系统自带的模块:http:协议请求模块;创建服务器:http.createServe...

  • Node.js HTTP模块

    内置HTTP模块 Node.js 中有 HTTP 这个内置模块,HTTP 模块允许 Node.js 通过超文本传输...

  • Pyhton网络请求库——urllib库

    Python内置HTTP请求库之urllib 其中包含的4个模块: -request:最基本的HTTP请求模块,用...

  • nodeJS内置模块

    1、http模块 创建服务器 使用 http.createServer() 方法创建服务器,并使用 listen ...

  • NodeJs内置模块

    全局模块 process 系统模块 path url fs http qs 查询字符串 自定义模块 moduler...

  • node模块载入机制

    node内模块以及载入顺序为: 内置模块 文件模块 文件目录模块 node_modules模块 内置模块 http...

网友评论

      本文标题:nodejs内置模块之http

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