Gravar objetos no arquivo com Node.js

Eu procurei por todo stackoverflow / google por isso, mas parece que não consigo descobrir.

Estou raspando links de mídia social de uma determinada página de URL e a função retorna um objeto com uma lista de URLs.

Quando tento gravar esses dados em um arquivo diferente, ele gera o arquivo como[object Object] em vez do esperado: ['https://twitter.com/#!/101Cookbooks','http://www.facebook.com/101cookbooks'] como acontece quando euconsole.log() os resultados.

Esta é minha triste tentativa de ler e gravar um arquivo no Node, tentando ler cada linha (o URL) e inserir através de uma chamada de funçãorequest(line, gotHTML):

fs.readFileSync('./urls.txt').toString().split('\n').forEach(function (line){
    console.log(line); 
    var obj = request(line, gotHTML); 
    console.log(obj); 
    fs.writeFileSync('./data.json', obj , 'utf-8'); 
});   

para referência - ogotHTML função:

function gotHTML(err, resp, html){ 
    var social_ids = []; 

    if(err){
        return console.log(err); 
    } else if (resp.statusCode === 200){ 
        var parsedHTML = $.load(html); 

        parsedHTML('a').map(function(i, link){
            var href = $(link).attr('href');
            for(var i=0; i<socialurls.length; i++){
                if(socialurls[i].test(href) && social_ids.indexOf(href) < 0 ) {
                    social_ids.push(href); 
                }; 
            }; 
        })
    };

    return social_ids;
};

questionAnswers(5)

yourAnswerToTheQuestion