0
我想根據查詢和每條記錄的httpRequest結果構建並返回CloudCode中的對象數組。httpRequest for循環爲所有記錄設置相同的值
下面的問題(示例)是它爲所有記錄的所有「元素」對象添加相同的值。從測試中我知道,變量 「外部」 的promises.push(Parse.Cloud.httpRequest(..(如 「國家名稱」)是唯一的。
缺少什麼我在這裏?
謝謝!
Parse.Cloud.define("search3", function(request, response) {
var rs = [];
var promises = [];
// Query CountryTemp class
var query = new Parse.Query('CountryTemp');
query.limit(1000);
query.exists("Country");
query.include("Country");
query.greaterThan('Month11', 25);
query.find().then(function(results) {
for (var i = 0; i < results.length; ++i) {
var element = {};
var result = results[i];
var country = result.get("Country");
var countryID = country.id;
var countryName = country.get("Name");
var temp = result.get("Month11");
promises.push(Parse.Cloud.httpRequest({
url: 'http://www.google.com'
}).then(function(httpResponse){
element.id = countryID;
element.countryName = countryName;
element.temp = result.get("Month11");
element.httpresponse = httpResponse.text.substr(0, 50);
rs.push(element);
}));
}
return Parse.Promise.when(promises);
}).then(function() {
response.success(rs);
}, function() {
response.error('error');
});
});