nodejs request模块使用promise 返回回调函数中的值


var request = require('request');
//exports.httprequest = (requestData) =>{
function httprequest(requestData){
    return new Promise((resolve, reject)=>{
        var url = "http://xxx/_search"
        var option ={
          url: url,
          method: "POST",
          json: true,
          headers: {
              "content-type": "application/json",
          },
          body: requestData
        }
        request(option, function(error, response, body) {
          if (!error && response.statusCode == 200) {
              resolve(body)
          }
        });
    });
    
};

var data = {
  xxx
}
httprequest(data).then(function(req){
    console.log(req)
})

 

当多个请求需要全部完成后返回结果可以使用 Promise.all() 

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Promise/all

 

使用request-promise模块代码结构更清晰

https://www.npmjs.com/package/request-promise

 

彻底了解nodejs中的回调

https://blog.csdn.net/rockage/article/details/79513450

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM