2011-12-15 13 views
0

最近、「ETIMEDOUT Connection timed out」という問題が発生しました。 私のアプリケーションは、get()メソッドを使用してリモートサーバーからファイルとデータをダウンロードします。ダウンロード中に (私はいくつかのファイルをダウンロードしたが、完全にはダウンロードしていないということを意味する)、私はちょうど "ETIMEDOUT Connection timed out"を得る。 node.jsのバグですか?私はnode.js 0.4.10を使用します。 ETIMEDOUTのため、ファイルを完全にダウンロードすることはできません。Node.js 0.4.10。 http get()リクエスト「ETIMEDOUT Connection timed out」頻繁

http = require('http'); 
client_req = http.get(...)// 

//... 
client_req.on('error', callback(err){...})/*When ETIMEDOUT, I get the error 
message: ETIMEDOUT Connection timed out here.*/ 
+1

エラーはタイムアウトという名前です。必ずしもnode.jsのバグであるとは限りません。同じURLでカールを使用するとタイムアウトになりますか? – fent

+0

こんにちは、私はカールについてはわかりません。しかし、私は上記のとおりです。たとえば、同じ接続からダウンロードするファイルが10個あります。私はいつも5つまたは9つのファイルをダウンロードした後、ETIMEDOUT Connectionがタイムアウトしました。どうしてか分かりません。最近、node.jsのソースコードを読んで、この問題を解決しようとしています。しかし、私は失敗です。そして、私はlib/http.jsのlib/net.jsのログをETIMEDOUTエラーを出すlocatに出力するのに正しいものを見つけることができませんでした。 – hyman

答えて

1

これは、あなたがタイムアウトを取得する理由です、おそらくURLはもはや到達できない、Node.jsのバグではありません。 @DeaDEnDが示唆しているように、カールして、cURLでタイムアウトしたかどうかを確認してください。

+0

こんにちは、私はそれについては分かりません。 node.js httpクライアントのリクエストqueneはどうですか?私は、http.jsにmaxsockets = 5があることを知ります。なぜなら、私のアプリケーションは一度に何百回も取得しなければならないからです。 – hyman

+0

エージェントを設定するにはfalseを使用します。http://nodejs.org/docs/library/http.html#http.get – alessioalex

+0

エージェントを設定します。しかし、 "ETIMEDOUT Connection timed out"がいつか再び来ます。 – hyman

関連する問題