2016-03-23 18 views
2

Düğüm ve laravel ile bir uygulama yazıyorum. Ben http://localhost:8000 çözer küçük laravel yerel sunucu çalıştırıyorum. Ben de localhost üzerinde bir düğüm sunucusu çalıştırıyorum: 3000. Sonra ikinci sunucudan ilk sunucuyu aramaya çalışıyorum.localhost'u localhost'tan (laravel, nodejs) nasıl ararım?

httpCaller.call('http://localhost', '/fire'); 

Ben şu yanıtı alıyorum:

var http = require('http'); 


module.exports = { 
    call: function (host, path) { 
     var options = { 
      host: host, 
      path: path, 
      port: 8000, 
      method: 'GET' 
     }; 

     callback = function(response) { 
      var str = ''; 

      response.on('data', function (chunk) { 
      str += chunk; 
      }); 

      response.on('end', function() { 
      return str; 
      }); 
     } 

     http.request(options, callback).end(); 
    } 
} 

Bu Yaptığım gerçek çağrısıdır: Ben http isteği yapmak İşte burada

var restify = require('restify'); 

var server = restify.createServer(); 

server.listen(3000, function() { 
    console.log('%s listening at %s', server.name, server.url); 
}); 

edilir: Burada NodeJs kodudur komut satırında:

Error: getaddrinfo ENOTFOUND http://localhost http://localhost:8000 
    at errnoException (dns.js:26:10) 
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:77:26) 

Ben http çıkarmadan çalıştı: // ve sadece yerel ev sahibi çağıran ve var şu:

Error: connect ECONNREFUSED 127.0.0.1:8000 
    at Object.exports._errnoException (util.js:890:11) 
    at exports._exceptionWithHostPort (util.js:913:20) 
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1057:14) 

Bunu nasıl yapabilirim?

cevap

0

http.get işlevini kullanmayı deneyin.

http.get('http://localhost:8000/fire', (res) => { 
    console.log(`Got response: ${res.statusCode}`); 
    // consume response body 
    res.resume(); 
}).on('error', (e) => { 
    console.log(`Got error: ${e.message}`); 
});