Getting an error with the request module

I'm doing a query to the mtgox server. Here is the API https://en.bitcoin.it/wiki/MtGox/API/HTTP/v1. My code successfully hits the server but after a a few times this error pops up:

events.js:115
      listeners[i].apply(this, args);
                   ^
TypeError: Cannot call method 'apply' of undefined
    at EncryptedStream.EventEmitter.emit (events.js:115:20)
    at SecurePair.destroy (tls.js:896:22)
    at process.startup.processNextTick.process._tickCallback (node.js:244:9)

I'm pretty sure this isn't from the API call limits.

//the following function returns general ticker information in USD. This includes high, low, and volume...

exports.market_data = function(req, res, next){
  console.log("test");
  options = {
    uri: 'http://mtgox.com/api/1/BTCUSD/ticker',
    headers: {
      'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/555.55 (KHTML, like Gecko) Chrome/55.5.5555.55 Safari/555.55'
    }
  };
  try {
    request(options, function (err, response, body) {
      // console.log(body);
      APIResponder.respond(res, response);
    });
  } catch(err) {
      console.log(err);
      console.log("Gangnam style");
    throw err;
  }
};

Sorry for the delay, Internet died. Here is the code that queries MTGox. Hope this helps.

I don't know what does your request function but if it's a shortcut for http.request, you should keep in mind that the response arrives in chunks. You do not know if you can write to res with the same speed as response gets chunks so your APIResponder.respond should pipe the response to res: res.pipe(response), or you can treat this manually:

response.on('data',function(data){
    var flushed = res.write(data);
    if(!flushed) response.pause();
})
res.on('drain',function(){
    response.resume();
})