I'm facing issue to receive an array from a http request before using async.map to launch queries on them.

My server side controller code below (express 4) :

```
'use strict';
var _ = require('lodash');
var request = require('request');
var asynce = require('async');
exports.index = function (req, res) {
    function cleanip(str) {
        return str.replace("/", "%2F");
    }
    var myUrls = [];
    var IpBlockedForSpam = [];
    var list = ["127.0.0.1/32", "192.168.0.1/32"];
    for (var i in list) {
        myUrls.push("http://localhost:9000/myapi/ip/blockedForSpam/" + cleanip(list[i]));
    }
    asynce.map(myUrls, function (url, callback) {
        request(url, function (error, response, html) {
            var r = JSON.parse(html);
            for (var i in r) {
                IpBlockedForSpam.push(r[i]);
            }
            callback(error, html);
        });
    }, function (err, results) {
        res.jsonp(IpBlockedForSpam);
    });
};

```

This code work with var list as static.

What i want to achieive is to be able fill this variable using a http request like this :

```
 request("http://localhost:9000/myapi/ip", function(error, response, body) {
        //console.log(body);
        remotelist.push(JSON.parse(body));
});

```

Calling `http://localhost:9000/myapi/ip` return :

```
[
"127.0.0.1/32",
"192.168.0.1/32"
]

```

I tried many thing without results because most time, my async method is launched before my required http call request to retrieve list.

Another thing, is it possible to not use url like `http://localhost:9000/myapi/*` and use only `/myapi/*`

Thank you in advance for suggestions, maybe i am wrong with this method.

See you.