From 7ed68c3e38b7e1b46aa110d4eb1b1eac686f291e Mon Sep 17 00:00:00 2001 From: onefang Date: Sat, 17 Aug 2019 08:38:45 +1000 Subject: Implement HEAD in our simple web server. --- OpenSim/Server/Handlers/Web/WebServerConnector.cs | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'OpenSim') diff --git a/OpenSim/Server/Handlers/Web/WebServerConnector.cs b/OpenSim/Server/Handlers/Web/WebServerConnector.cs index 7879e4e..c18e09e 100644 --- a/OpenSim/Server/Handlers/Web/WebServerConnector.cs +++ b/OpenSim/Server/Handlers/Web/WebServerConnector.cs @@ -139,8 +139,7 @@ namespace OpenSim.Server.Handlers.Web m_log.InfoFormat("[WEB SERVICE]: {0} method path {1} query {2} value {3}", method, reqpath, q, (string) request[q]); reply["int_response_code"] = 200; -// TODO - need to support HEAD method, seems to be what triggers the endles GETs. - if ("GET" == method) + if (("GET" == method) || ("HEAD" == method)) { if (File.Exists(path)) { @@ -160,6 +159,11 @@ namespace OpenSim.Server.Handlers.Web reply["int_response_code"] = 304; m_log.InfoFormat("[WEB SERVICE]: If-Modified-Since is earliar or equal to Last-Modified, from {0}", path); reply["headers"] = replyHeaders; + if ("HEAD" == method) + { + reply["bin_response_data"] = null; + reply["str_response_string"] = null; + } return reply; } } @@ -311,6 +315,11 @@ namespace OpenSim.Server.Handlers.Web m_log.Info("[WEB SERVICE]: "); reply["headers"] = replyHeaders; + if ("HEAD" == method) + { + reply["bin_response_data"] = null; + reply["str_response_string"] = null; + } return reply; } -- cgit v1.1