This gets a lot easier if you use the request library.

var request = require('request');
    { json: { key: 'value' } },
    function (error, response, body) {
        if (!error && response.statusCode == 200) {

Aside from providing a nice syntax it makes json requests easy, handles oauth signing (for twitter, etc.), can do multi-part forms (e.g. for uploading files) and streaming.

To install request use command npm install request