Skip to content

Instantly share code, notes, and snippets.

@richcollins
Created December 6, 2010 21:30
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save richcollins/a8eadd54d1058bcda796 to your computer and use it in GitHub Desktop.
Save richcollins/a8eadd54d1058bcda796 to your computer and use it in GitHub Desktop.
var http = require("http");
var sys = require("sys");
function sendReq()
{
sys.print("sendReq\n");
var resent = false;
function resendReq(reason)
{
if(!resent)
{
sys.print(reason + "\n");
resent = true;
sendReq();
}
}
var client = http.createClient(80, "www.yahoo.com");
client.on("error", function(){ resendReq("client error") });
client.on("close", function(){ resendReq("client close") });
var request = client.request("GET", "/", { Host: "www.yahoo.com" });
request.on("error", function(){ resendReq("request error") });
request.on("close", function(){ resendReq("request close") });
request.end();
var body = "";
request.on("response", function(response){
response.on("error", function(){ resendReq("response error") });
response.on("close", function(){ resendReq("response close") });
response.on("data", function(chunk){
body = body + chunk;
});
response.on("end", function(){ resendReq("response end") });
});
}
sendReq();
@richcollins
Copy link
Author

this updated version should work. sendReq was being called twice, once for end and once for close

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment