Bluebirds Collection 機能を使用してプロミス チェーンを利用しようとしています。
たとえば、スクリプトの 1 つ:
var rest = require("./promisified_restler.js");
function memory(token) {
CHECK='cfDJO9im';
URL='https://monitoring.api.foo.com/v1.0/833/';
SLUG='entities/en5mKIvs/checks/';
MODE='/test';
url = CHECK+URL+SLUG+CHECK+MODE
headers = { headers:
{ "X-Auth-Token": token }
}
return rest.post(url, headers);
}
module.exports = memory;
メインスクリプト:
var getToken = require('./get_token.js');
var memory = require('./memory.js');
var cpu = require('./cpu.js');
var http = require('./http.js');
var httpPort = require('./http_port.js');
var network = require('./network.js');
getToken()
.catch(function(e) {
console.log(e);
})
.all([cpu(token), memory(token)]).spread(function(cpu_result,
memory_result) {
console.log(JSON.stringify(cpu_result));
console.log(JSON.stringify(memory_result));
});
promise オブジェクトを返す各関数にトークン値を渡すにはどうすればよいですか?
promise オブジェクトの 1 つが拒否された場合、Promise.all() はどうなりますか? .all() は停止し、false を返し、配列内の残りの項目を終了しませんか?
- 関数/promise オブジェクトは並行して実行されますか?
- Spread() に引数を 1 つだけ受け入れさせ、返される値ごとに適用することは可能ですか? 例:
.spread(function(returnedValue) {console.log(JSON.stringify(returnedValue)); });