promisify请求模块后如何正确使用putAsync

我在这里和那里search,结果没有发现有关蓝鸟的promisified请求的putAsync方法。

var request = require('request'); var Promise = require('bluebird'); Promise.promisifyAll(require("request")); request.putAsync({ uri: buApiUrl, headers: { 'content-type': 'application/json' }, body: JSON.stringify({ name: BU, workstations: formattedWorkStaions[BU] }) }).spread(function (response, body) { debugHelper.log(body); }).catch(function (err) { debugHelper.error(err); }); 

以上是我的程序中的代码片段。 而且它不发送放置请求。 在使用postAsync的时候,如果会发送post请求成功。

任何人都可以解释为什么吗

我已经在putAsync代码片段中find了错误的部分。 我应该使用json而不是body来作为有效载荷的关键字。 有效载荷不需要被串起来。 以下是经过validation的新代码段。

 var request = require('request'); var Promise = require('bluebird'); Promise.promisifyAll(require("request")); request.putAsync({ uri: buApiUrl, headers: { 'content-type': 'application/json' }, json: { name: BU, workstations: formattedWorkStaions[BU] } }).spread(function (response, body) { debugHelper.log(body); }).catch(function (err) { debugHelper.error(err); });