promise介绍
使用:
function getMessageData() {
    var queryUrl = "http://1.1.1.1:1";
    var param = {};
    return new Promise((resolve, reject)=>{
        request.post(queryUrl, JSON.stringify(param), function(result){
          if(result.Result == 0 && result.Data.length > 0){
            resolve(result.Data)
          } else{
            resolve('');
            console.log('error', result);
          }
        }, function(error){
          console.log(error);
          reject('error', error);
        })
      }).catch((err)=>{
        console.log('error', err);
      })
    }涉及到关联多次查询的话,可以用链式操作
function getMessageData() {
      var queryUrl = "http://1.1.1.1:1";
      var param = {};
      return new Promise((resolve, reject) => {
        request.post(queryUrl, JSON.stringify(param ), function (result) {
          if (result.Result == 0 && result.Data.length > 0) {
            resolve(result.Data)
          } else {
            resolve('')
          }
        }, function (error) {
          console.log(error)
          reject(error)
        })
      }).then(data => {
        var param = data;
        return new Promise((resolve, reject) => {
          request.post(queryUrl, JSON.stringify(param), function (result) {
            if (result.Result == 0) {
              resolve(result)
            } else {
              console.log(result)
              resolve('')
            }
          }, function (error) {
            console.log(error)
            reject(error)
          })
        })
      }).catch((err) => {
        console.log(err)
      })
    }调用:
async function loadData() {
  var messageList = await getMessageData();
  console.log(messageList );
}还可以这样
function loadData(){
  getMessageData().then(data => {
      console.log(data);        
  });
}                









