溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Node.js中Express框架怎么使用axios同步請求

發(fā)布時間:2023-04-11 10:31:34 來源:億速云 閱讀:173 作者:iii 欄目:開發(fā)技術

這篇文章主要介紹了Node.js中Express框架怎么使用axios同步請求的相關知識,內(nèi)容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Node.js中Express框架怎么使用axios同步請求文章都會有所收獲,下面我們一起來看看吧。

首先定義一個方法syncAxios

let axios = require('axios');

exports.syncAxios = function (obj = {}) {
  let url =  "http://www.rrbay.com/api/";

  return new Promise((resolve, reject) => {
    axios(url, {
      method: 'POST',
      timeout: 5000,
      params: {
        sProcName: obj.sProcName,
        idNo: obj.id,
        userName: obj.qq,
        overTime: obj.endTime
      }
    }).then((res) => {
      resolve(res.data);
    }).catch((error) => {
      reject(error)
    })
  })
};

然后在controllers 調(diào)用

exports.check = function (req, res) {
  //定義async方法體
  XXXMode.findById(id).populate('author').exec(async function (err, result) { 
    let dataCode = false;
    if(result.status ==0){
        //同步調(diào)用
      await baseapi.syncAxios({
          sProcName: 'Update',
          id: '000000-1111-2222-3333-9999999',
          qq: '391502069',//result.author.name,
          endTime:  '2022/12/31 11:39:05'//result.EndTime
        }).then((data) => {
          console.log(data, 'res');
        }).catch((err) => {
          console.log(err && err.stack);
        });

    }
    result.save(function (err, onewxtob) {
      if (req.xhr) {
        return res.json({
          status: !err
        })
      }
    });
  });
};

view中使用模板引擎jade,需要在請求check后,延遲刷新頁面顯示請求結果

setTimeout(function () {
   $(location).attr('href',window.location.href)
}, 1000)

這里的setTimeout實現(xiàn)了延遲加載刷新頁面的效果,結合控制器的交互,最終實現(xiàn)了同步操作的效果。

關于“Node.js中Express框架怎么使用axios同步請求”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“Node.js中Express框架怎么使用axios同步請求”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI