我在这里和那里搜索并最终没有找到关于bluebird的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);
});
以上是我程序中的代码段。并且它不发送put请求。使用postAsync时,if会成功发送帖子请求。
答案 0 :(得分:0)
你的代码对我来说似乎很好。
实施例
if myArrayOfInt.contains(someInt){
...
或者你可以像这样传递JSON身体 -
var request = require('request');
var Promise = require('bluebird');
Promise.promisifyAll(require("request"));
request.putAsync({
uri: 'https://httpbin.org/put',
headers: {
'content-type': 'application/json'
},
body: JSON.stringify({
name: 'anon'
})
}).spread(function (response, body) {
console.log(body);
}).catch(function (err) {
console.error(err);
});
确保API端点正在接受PUT请求,并且正确定义了变量request.putAsync({
uri: 'https://httpbin.org/put',
json: { name: 'anon' }
})
....
,BU
。我想formattedWorkStaions[BU]
应该是formattedWorkStaions
?