我正在使用Windows 8.1,并安装了NodeJS 0.10。我安装了Coffee-Script,并使用了http://coffeescriptcookbook.com/chapters/networking/basic-http-client
中的这个简单示例http = require 'http'
http.get ( host: 'www.google.com' ), (res) ->
console.log res.statusCode
# Returns: 200
但是,当我使用本地主机或4567端口的127.0.0.1来测试我的Sinatra页面时,我收到DNS错误。
http = require 'http'
http.get ( host: 'http://127.0.0.1:4567' ), (res) ->
console.log res.statusCode
,错误是:
$> coffee http-request.coffee
events.js:72
throw er; // Unhandled 'error' event
^
Error: getaddrinfo ENOTFOUND
at errnoException (dns.js:37:11)
at Object.onanswer [as oncomplete] (dns.js:124:16)
这是Ruby Sinatra应用程序
require 'sinatra'
get '/' do
erb :index
end
__END__
@@ index
<h1>Hello World!</h1>
我已经离开并编辑了C:\Windows\System32\drivers\etc\hosts
并将127.0.0.1解析为localhost,但我仍然收到上述错误。接下来我该怎么做?
- 更新 -
在看了Christian Fritz的回答之后,我现在得到了不同的结果。
events.js:72
throw er; // Unhandled 'error' event
^
Error: connect ECONNREFUSED
at errnoException (net.js:904:11)
at Object.afterConnect [as oncomplete] (net.js:895:19)
答案 0 :(得分:0)
您对http.get
的调用错误。要么实际命名主机,要么只使用您使用URL的速记:
http.get ( 'http://127.0.0.1:4567' ), (res) ->
console.log res.statusCode