Node.js教程之request模块
沉沙 2018-05-15 来源 : 阅读 656 评论 0

摘要:本篇Node.js教程讲解了request模块,request模块让http请求变的更加简单,希望本篇Node.js教程对大家有所帮助。

request模块让http请求变的更加简单。最简单的一个示例:

    var request = require('request');
     
    request('//www.google.com', function (error, response, body) {
      if (!error && response.statusCode == 200) {
        console.log(body);
      }
    })

 

安装:

npm install request

 

可以用request的pipe方法很方便的获取图片的文件流

    var request = require('request'),
        fs = require('fs');
     
    request('https://www.google.com.hk/images/srpr/logo3w.png').pipe(fs.createWriteStream('doodle.png'));

 

request也支持OAuth的签名请求

更多使用方法和说明可点击这里继续阅读:https://github.com/mikeal/request/

 

这里写了一个很简单的示例,用来抓取去哪儿网的酒店查询数据(获取酒店某一时间段内各房型的价格排名):

    var request = require('request'),

        fs = require('fs');

     

     

    var reqUrl = '//hotel.qunar.com/price/detail.jsp?fromDate=2012-08-18&toDate=2012-08-19&cityurl=shanghai_city&HotelSEQ=shanghai_city_2856&cn=5';

     

    request({uri:reqUrl}, function(err, response, body) {

        

        //console.log(response.statusCode);

      //console.log(response);

       

      //如果数据量比较大,就需要对返回的数据根据日期、酒店ID进行存储,如果获取数据进行对比的时候直接读文件

       var filePath = __dirname + '/data/data.js';
       
       if (fs.exists(filePath)) {
           fs.unlinkSync(filePath);
    
           console.log('Del file ' + filePath);
       }
       
       fs.writeFile(filePath, body, 'utf8', function(err) {
           if (err) {
               throw err;
           }
    
           console.log('Save ' + filePath + ' ok~');
       });
       
       console.log('Fetch ' + reqUrl + ' ok~');
   });

 

本文由职坐标整理发布,欢迎关注职坐标Node.js频道,学习更多数据库知识!


本文由 @沉沙 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程