Escribir objetos en el archivo con Node.js

He buscado en todo stackoverflow / google para esto, pero parece que no puedo entenderlo.

Estoy raspando enlaces de redes sociales de una página de URL determinada, y la función devuelve un objeto con una lista de URL.

Cuando intento escribir estos datos en un archivo diferente, se envía al archivo como[object Object] en lugar de lo esperado: ['https://twitter.com/#!/101Cookbooks','http://www.facebook.com/101cookbooks'] como lo hace cuando yoconsole.log() Los resultados.

Este es mi triste intento de leer y escribir un archivo en Node, tratando de leer cada línea (la url) e ingresar a través de una llamada de funciónrequest(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 referencia - elgotHTML función:

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;
};