net/http/server.lua
changeset 13264 da21185fd026
parent 13122 6b5e92949051
child 13265 7c62370dee9a
equal deleted inserted replaced
13263:9097149923ae 13264:da21185fd026
   105 	self.data.conn:pause();
   105 	self.data.conn:pause();
   106 end
   106 end
   107 
   107 
   108 function runner_callbacks:error(err)
   108 function runner_callbacks:error(err)
   109 	log("error", "Traceback[httpserver]: %s", err);
   109 	log("error", "Traceback[httpserver]: %s", err);
   110 	self.data.conn:write("HTTP/1.0 500 Internal Server Error\r\n\r\n"..events.fire_event("http-error", { code = 500, private_message = err }));
   110 	local response = { headers = { content_type = "text/plain" }; body = "" };
       
   111 	response.body = events.fire_event("http-error", { code = 500; private_message = err; response = response });
       
   112 	self.data.conn:write("HTTP/1.0 500 Internal Server Error\r\n\z\
       
   113 		X-Content-Type-Options: nosniff\r\n\z\
       
   114 		Content-Type: " .. response.header.content_type .. "\r\n\r\n");
       
   115 	self.data.conn:write(response.body);
   111 	self.data.conn:close();
   116 	self.data.conn:close();
   112 end
   117 end
   113 
   118 
   114 local function noop() end
   119 local function noop() end
   115 function listener.onconnect(conn)
   120 function listener.onconnect(conn)