簡體   English   中英

如何從不受歡迎的PUT請求中返回承諾

[英]How to Return a Promise from a Unirest PUT Request

我正在嘗試創建一個返回promise的函數,以便它可以鏈接在一起並與其他一些函數集成。

當我嘗試運行時,我收到以下錯誤: TypeError: Cannot read property 'then' of undefined

我可以將承諾放在.end中嗎?還是需要將它包裹在整個函數體中? 可以像這樣妥善處理錯誤嗎?

index.js

const module = require('./module');

var test = {
  name: "Full Name"
};

module.update(test).then((response) => {
  console.log(response);
});

module.js

const unirest = require('unirest');

module.exports = {

update: function({name}) {
  unirest.put(someURL)
    .headers({
      'Content-Type': 'application/json'
    })
    .send({
      name: name
    })
    .end(function (response) {
      return new Promise((resolve, reject) => {
        if(response) {
          resolve(response)
        }
        if(error){
          reject(response)
        }
      })
  });
};

函數的根應該是返回promise的函數。

update: function(name) {
  return new Promise((resolve, reject) => {
    unirest.put(someURL)
      .headers({
        'Content-Type': 'application/json'
      })
      .send({
        name: name
      })
      .end(function (response) {
        if(response) {
          resolve(response)
        }
        if(error){
          reject(response)
        }
      })
  });
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM