Parse platform httpRequest inside for循环为所有记录设置相同的值
我希望根据查询和对每个记录执行的httpRequest的结果,从CloudCode构建并返回一个对象数组 以下示例的问题是,它为所有记录的所有元素对象添加相同的值。通过测试,我知道promises.pushParse.Cloud.httpRequest之外的变量。。e、 g.countryName是唯一的 我错过了什么 谢谢Parse platform httpRequest inside for循环为所有记录设置相同的值,parse-platform,Parse Platform,我希望根据查询和对每个记录执行的httpRequest的结果,从CloudCode构建并返回一个对象数组 以下示例的问题是,它为所有记录的所有元素对象添加相同的值。通过测试,我知道promises.pushParse.Cloud.httpRequest之外的变量。。e、 g.countryName是唯一的 我错过了什么 谢谢 Parse.Cloud.define("search3", function(request, response) { var rs = []; var
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');
});
});
发现问题,使用下划线_each而不是for修复问题:
var _ = require('underscore');
..
_.each(results, function(result) {