Wednesday, 5 April 2017

{ Error: socket hang up at createHangUpError (_http_client.js:254:15)

I am setting up a proxy server for my api. All individual endpoints are working fine. Except when i use my proxy server as API endpoint for my web app. I am getting this error after few api calls. Not even able to login properly in my app.

Below is my code.

req.headers['Connection'] = 'close';
var options = {
      headers: req.headers,
      method: req.method,
      json: true,
      gzip: true,
      body: req.body,
      timeout: 50000,
      tunnel: false,
      qs: req._parsedUrl.query,
      url: 'http://' + host + req.originalUrl,
      encoding: null
      // forwardHost: true
}
console.log('request start');

var reques = request(options, function(error, response, body){
if (!error) {
  response.headers['content-encoding'] = null;
  res.set(response.headers);
    console.log(body);
    console.log(response.headers);
    res.send(JSON.stringify(body));
    res.on('end', function(){
      reques.end()
    })

  // }


  }


 }).on('socket', function(socket) {debugger
  if (options.timeout) {
    socket.setTimeout(options.timeout, function() {
      reques.abort();
    });
  }
}).on('error', function(err) {debugger
  if (err.code === 'ECONNRESET') {
    console.log(err);
    res.setHeader('X-Timout-Reason',
      'express-http-proxy timed out your request after ' +
      options.timeout + 'ms.');
    res.writeHead(504, {'Content-Type': 'text/plain'});
    res.end();
    reques.end();
  }
}).on('aborted', function() {
  reques.abort();
  reques.end();
});

req.socket.on('error', function(err){
  console.log('socker error');
  console.log(err);

})



via RAHUL SRIVASTAVA

No comments:

Post a Comment