Alex Alex - 3 years ago 104
HTTP Question

What could cause "connect ETIMEDOUT" error when the URL is working in browser?

I train myslef with NodeJS and tried a simple GET call.
Here is my code:

var http = require('http');

var options = {
host: '',
path: '/xmlapi/boardgame/1?stats=1',
method: 'GET'

var request = http.request(options, function (response) {
var str = ""
response.on('data', function (data) {
str += data;
response.on('end', function () {

request.on('error', function (e) {
console.log('Problem with request: ' + e.message);


The URL called seems to work in my browser

Anyway, I've got Problem with request: connect ETIMEDOUT when I run the code and I have no idea how to fix it.

What could cause this error ? Is it my code or is it a network/proxy issue?

Answer Source

When behind a proxy you need to make the following modifications (as explained in this answer):

  • put the proxy host in the host parameter
  • put the proxy port in the port parameter
  • put the full destination URL in the path parameter :

Which gives:

var options = {
    host: '<PROXY_HOST>',
    port: '<PROXY_PORT>',
    path: '',
    method: 'GET',
    headers: {
        Host: ''
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download