Отправьте параллельный HTTP-запрос и, наконец, объедините ответ с JavaScript - PullRequest
0 голосов
/ 17 января 2020

Я отправляю параллельные запросы на учетную запись sfd c и таблицы контактов, используя ниже. Однако я получаю ответ, как показано, но ожидается получение поля Id из ответа JSON в виде массива. Я думаю, что проблема с обещанием. Карта? Большое спасибо !!

var Promise = require("bluebird");
var request = require('request-promise');

// create request objects
var requests = [{
  url: 'https://um1.salesforce.com/services/data/v37.0/query/?q=SELECT+Id+FROM+Account',
  headers: {
    'Authorization': 'Bearer example1'
  }
}, {
  url: 'https://um1.salesforce.com/services/data/v37.0/query/?q=SELECT+Id+FROM+Contact',
  headers: {
    'Authorization': 'Bearer example2'
  }
}];

Promise.map(requests, function(obj) {
  return request(obj).then(function(body) {
    return JSON.parse(body);
  });
}).then(function(results) {
  console.log(results);
  for (var i = 0; i < results.length; i++) {
    // access the result's body via results[i]
  }
}, function(err) {
  // handle all your errors here
});
текущий вывод === [{totalSize: 12, выполнено: true, записи: [[Объект], [Объект], [Объект], [Объект], [Объект], [Объект] , [Объект], [Объект], [Объект], [Объект], [Объект], [Объект]]}, {totalSize: 20, сделано: истина, записи: [[Объект], [Объект], [Объект] , [Объект], [Объект], [Объект], [Объект], [Объект], [Объект], [Объект], [Объект], [Объект], [Объект], [Объект], [Объект], [ Объект], [Объект], [Объект], [Объект], [Объект]]}]
Expected output
===
{ Result:[{Id: '123'}, {Id: '234'}]} -- these values say retrieved from JSON response from 2 different objects/requests.
...