我的端口8123上的本地Apache'httpd'服务器正在运行。
当我说“ telnet 127.0.0.1 8123”时有效,而“ curl 127.0.0.1:8123”也有效。甚至http服务器也可以通过浏览器运行。但是当我使用Node.js发出http请求时,它失败了。
我写的代码:
var options = {
host: '127.0.0.1:8123',
path: '/test',
method: 'GET'
};
var callback = function(response) {
// Logs written here.
};
var req = http.request(options, callback);
req.on('error', function(e) { console.log('problem with request: ' + e.message); });
req.end()
当我将其作为“ node test.js”执行时,它会引发错误:-“请求的问题:getaddrinfo ENOTFOUND”
我不了解我的Node.js无法解析到我自己的本地服务器。任何帮助表示赞赏。谢谢
最佳答案
您是否尝试过按照文档中的说明在选项中分离端口? http://nodejs.org/api/http.html#http_http_request_options_callback
编辑:而且似乎使用hostname
代替host
为您的主机的ip /域是一个首选约定:
var options = {
hostname: '127.0.0.1',
port: 8123,
path: '/test',
method: 'GET'
};