示例#1
0
        internal HTTPServerResponse(HTTPServerSession session)
        {
            _session = session;

            _status = HTTPStatus.HTTP_OK;
            _reason = GetReasonForStatus(HTTPStatus.HTTP_OK);
        }
示例#2
0
 protected virtual void SendStatus(HTTPStatus statusCode, string errorString)
 {
     Log(LogLevel.Debug, "HTTP: Sending status {0}", statusCode);
     m_Response.Status = statusCode;
     AddStandardHeaders();
     m_Response.Body.Append(errorString);
     Send(m_Response);
 }
示例#3
0
        public virtual string GetStatusMessage(HTTPStatus statusCode)
        {
            switch (statusCode)
            {
            case HTTPStatus.Continue: return("Continue");

            case HTTPStatus.SwitchingProtocols: return("Switching Protocols");

            case HTTPStatus.OK: return("OK");

            case HTTPStatus.Created: return("Created");

            case HTTPStatus.Accepted: return("Accepted");

            case HTTPStatus.NonAuthoritativeInformation: return("Non-Authoritative Information");

            case HTTPStatus.NoContent: return("No Content");

            case HTTPStatus.ResetContent: return("Reset Content");

            case HTTPStatus.PartialContent: return("Partial Content");

            case HTTPStatus.MultipleChoices: return("Multiple Choices");

            case HTTPStatus.MovedPermanently: return("Moved Permanently");

            case HTTPStatus.Found: return("Found");

            case HTTPStatus.SeeOther: return("See Other");

            case HTTPStatus.NotModified: return("Not Modified");

            case HTTPStatus.UseProxy: return("Use Proxy");

            case HTTPStatus.TemporaryRedirect: return("Temporary Redirect");

            case HTTPStatus.BadRequest: return("Bad Request");

            case HTTPStatus.Unauthorized: return("Unauthorized");

            case HTTPStatus.PaymentRequired: return("Payment Required");

            case HTTPStatus.Forbidden: return("Forbidden");

            case HTTPStatus.NotFound: return("Not Found");

            case HTTPStatus.MethodNotAllowed: return("Method Not Allowed");

            case HTTPStatus.NotAcceptable: return("Not Acceptable");

            case HTTPStatus.ProxyAuthenticationRequired: return("Proxy Authentication Required");

            case HTTPStatus.RequestTimeout: return("Request Timeout");

            case HTTPStatus.Conflict: return("Conflict");

            case HTTPStatus.Gone: return("Gone");

            case HTTPStatus.LengthRequired: return("Length Required");

            case HTTPStatus.PreconditionFailed: return("Precondition Failed");

            case HTTPStatus.RequestEntityTooLarge: return("Request Entity Too Large");

            case HTTPStatus.RequestURITooLong: return("Request-URI Too Long");

            case HTTPStatus.UnsupportedMediaType: return("Unsupported Media Type");

            case HTTPStatus.RequestedRangeNotSatisfiable: return("Requested Range Not Satisfiable");

            case HTTPStatus.ExpectationFailed: return("Expectation Failed");

            case HTTPStatus.InternalServerError: return("Internal Server Error");

            case HTTPStatus.NotImplemented: return("Not Implemented");

            case HTTPStatus.BadGateway: return("Bad Gateway");

            case HTTPStatus.ServiceUnavailable: return("Service Unavailable");

            case HTTPStatus.GatewayTimeout: return("Gateway Timeout");

            case HTTPStatus.HTTPVersionNotSupported: return("HTTP Version Not Supported");
            }
            return("Unknown");
        }
示例#4
0
        private static string GetReasonForStatus(HTTPStatus status)
        {
            switch (status)
            {
            case HTTPStatus.HTTP_CONTINUE:
                return(HTTP_REASON_CONTINUE);

            case HTTPStatus.HTTP_SWITCHING_PROTOCOLS:
                return(HTTP_REASON_SWITCHING_PROTOCOLS);

            case HTTPStatus.HTTP_OK:
                return(HTTP_REASON_OK);

            case HTTPStatus.HTTP_CREATED:
                return(HTTP_REASON_CREATED);

            case HTTPStatus.HTTP_ACCEPTED:
                return(HTTP_REASON_ACCEPTED);

            case HTTPStatus.HTTP_NONAUTHORITATIVE:
                return(HTTP_REASON_NONAUTHORITATIVE);

            case HTTPStatus.HTTP_NO_CONTENT:
                return(HTTP_REASON_NO_CONTENT);

            case HTTPStatus.HTTP_RESET_CONTENT:
                return(HTTP_REASON_RESET_CONTENT);

            case HTTPStatus.HTTP_PARTIAL_CONTENT:
                return(HTTP_REASON_PARTIAL_CONTENT);

            case HTTPStatus.HTTP_MULTIPLE_CHOICES:
                return(HTTP_REASON_MULTIPLE_CHOICES);

            case HTTPStatus.HTTP_MOVED_PERMANENTLY:
                return(HTTP_REASON_MOVED_PERMANENTLY);

            case HTTPStatus.HTTP_FOUND:
                return(HTTP_REASON_FOUND);

            case HTTPStatus.HTTP_SEE_OTHER:
                return(HTTP_REASON_SEE_OTHER);

            case HTTPStatus.HTTP_NOT_MODIFIED:
                return(HTTP_REASON_NOT_MODIFIED);

            case HTTPStatus.HTTP_USEPROXY:
                return(HTTP_REASON_USEPROXY);

            case HTTPStatus.HTTP_TEMPORARY_REDIRECT:
                return(HTTP_REASON_TEMPORARY_REDIRECT);

            case HTTPStatus.HTTP_BAD_REQUEST:
                return(HTTP_REASON_BAD_REQUEST);

            case HTTPStatus.HTTP_UNAUTHORIZED:
                return(HTTP_REASON_UNAUTHORIZED);

            case HTTPStatus.HTTP_PAYMENT_REQUIRED:
                return(HTTP_REASON_PAYMENT_REQUIRED);

            case HTTPStatus.HTTP_FORBIDDEN:
                return(HTTP_REASON_FORBIDDEN);

            case HTTPStatus.HTTP_NOT_FOUND:
                return(HTTP_REASON_NOT_FOUND);

            case HTTPStatus.HTTP_METHOD_NOT_ALLOWED:
                return(HTTP_REASON_METHOD_NOT_ALLOWED);

            case HTTPStatus.HTTP_NOT_ACCEPTABLE:
                return(HTTP_REASON_NOT_ACCEPTABLE);

            case HTTPStatus.HTTP_PROXY_AUTHENTICATION_REQUIRED:
                return(HTTP_REASON_PROXY_AUTHENTICATION_REQUIRED);

            case HTTPStatus.HTTP_REQUEST_TIMEOUT:
                return(HTTP_REASON_REQUEST_TIMEOUT);

            case HTTPStatus.HTTP_CONFLICT:
                return(HTTP_REASON_CONFLICT);

            case HTTPStatus.HTTP_GONE:
                return(HTTP_REASON_GONE);

            case HTTPStatus.HTTP_LENGTH_REQUIRED:
                return(HTTP_REASON_LENGTH_REQUIRED);

            case HTTPStatus.HTTP_PRECONDITION_FAILED:
                return(HTTP_REASON_PRECONDITION_FAILED);

            case HTTPStatus.HTTP_REQUESTENTITYTOOLARGE:
                return(HTTP_REASON_REQUESTENTITYTOOLARGE);

            case HTTPStatus.HTTP_REQUESTURITOOLONG:
                return(HTTP_REASON_REQUESTURITOOLONG);

            case HTTPStatus.HTTP_UNSUPPORTEDMEDIATYPE:
                return(HTTP_REASON_UNSUPPORTEDMEDIATYPE);

            case HTTPStatus.HTTP_REQUESTED_RANGE_NOT_SATISFIABLE:
                return(HTTP_REASON_REQUESTED_RANGE_NOT_SATISFIABLE);

            case HTTPStatus.HTTP_EXPECTATION_FAILED:
                return(HTTP_REASON_EXPECTATION_FAILED);

            case HTTPStatus.HTTP_INTERNAL_SERVER_ERROR:
                return(HTTP_REASON_INTERNAL_SERVER_ERROR);

            case HTTPStatus.HTTP_NOT_IMPLEMENTED:
                return(HTTP_REASON_NOT_IMPLEMENTED);

            case HTTPStatus.HTTP_BAD_GATEWAY:
                return(HTTP_REASON_BAD_GATEWAY);

            case HTTPStatus.HTTP_SERVICE_UNAVAILABLE:
                return(HTTP_REASON_SERVICE_UNAVAILABLE);

            case HTTPStatus.HTTP_GATEWAY_TIMEOUT:
                return(HTTP_REASON_GATEWAY_TIMEOUT);

            case HTTPStatus.HTTP_VERSION_NOT_SUPPORTED:
                return(HTTP_REASON_VERSION_NOT_SUPPORTED);

            default:
                return(HTTP_REASON_UNKNOWN);
            }
        }
 private static string GetReasonForStatus(HTTPStatus status)
 {
     switch (status)
     {
         case HTTPStatus.HTTP_CONTINUE:
             return HTTP_REASON_CONTINUE;
         case HTTPStatus.HTTP_SWITCHING_PROTOCOLS:
             return HTTP_REASON_SWITCHING_PROTOCOLS;
         case HTTPStatus.HTTP_OK:
             return HTTP_REASON_OK;
         case HTTPStatus.HTTP_CREATED:
             return HTTP_REASON_CREATED;
         case HTTPStatus.HTTP_ACCEPTED:
             return HTTP_REASON_ACCEPTED;
         case HTTPStatus.HTTP_NONAUTHORITATIVE:
             return HTTP_REASON_NONAUTHORITATIVE;
         case HTTPStatus.HTTP_NO_CONTENT:
             return HTTP_REASON_NO_CONTENT;
         case HTTPStatus.HTTP_RESET_CONTENT:
             return HTTP_REASON_RESET_CONTENT;
         case HTTPStatus.HTTP_PARTIAL_CONTENT:
             return HTTP_REASON_PARTIAL_CONTENT;
         case HTTPStatus.HTTP_MULTIPLE_CHOICES:
             return HTTP_REASON_MULTIPLE_CHOICES;
         case HTTPStatus.HTTP_MOVED_PERMANENTLY:
             return HTTP_REASON_MOVED_PERMANENTLY;
         case HTTPStatus.HTTP_FOUND:
             return HTTP_REASON_FOUND;
         case HTTPStatus.HTTP_SEE_OTHER:
             return HTTP_REASON_SEE_OTHER;
         case HTTPStatus.HTTP_NOT_MODIFIED:
             return HTTP_REASON_NOT_MODIFIED;
         case HTTPStatus.HTTP_USEPROXY:
             return HTTP_REASON_USEPROXY;
         case HTTPStatus.HTTP_TEMPORARY_REDIRECT:
             return HTTP_REASON_TEMPORARY_REDIRECT;
         case HTTPStatus.HTTP_BAD_REQUEST:
             return HTTP_REASON_BAD_REQUEST;
         case HTTPStatus.HTTP_UNAUTHORIZED:
             return HTTP_REASON_UNAUTHORIZED;
         case HTTPStatus.HTTP_PAYMENT_REQUIRED:
             return HTTP_REASON_PAYMENT_REQUIRED;
         case HTTPStatus.HTTP_FORBIDDEN:
             return HTTP_REASON_FORBIDDEN;
         case HTTPStatus.HTTP_NOT_FOUND:
             return HTTP_REASON_NOT_FOUND;
         case HTTPStatus.HTTP_METHOD_NOT_ALLOWED:
             return HTTP_REASON_METHOD_NOT_ALLOWED;
         case HTTPStatus.HTTP_NOT_ACCEPTABLE:
             return HTTP_REASON_NOT_ACCEPTABLE;
         case HTTPStatus.HTTP_PROXY_AUTHENTICATION_REQUIRED:
             return HTTP_REASON_PROXY_AUTHENTICATION_REQUIRED;
         case HTTPStatus.HTTP_REQUEST_TIMEOUT:
             return HTTP_REASON_REQUEST_TIMEOUT;
         case HTTPStatus.HTTP_CONFLICT:
             return HTTP_REASON_CONFLICT;
         case HTTPStatus.HTTP_GONE:
             return HTTP_REASON_GONE;
         case HTTPStatus.HTTP_LENGTH_REQUIRED:
             return HTTP_REASON_LENGTH_REQUIRED;
         case HTTPStatus.HTTP_PRECONDITION_FAILED:
             return HTTP_REASON_PRECONDITION_FAILED;
         case HTTPStatus.HTTP_REQUESTENTITYTOOLARGE:
             return HTTP_REASON_REQUESTENTITYTOOLARGE;
         case HTTPStatus.HTTP_REQUESTURITOOLONG:
             return HTTP_REASON_REQUESTURITOOLONG;
         case HTTPStatus.HTTP_UNSUPPORTEDMEDIATYPE:
             return HTTP_REASON_UNSUPPORTEDMEDIATYPE;
         case HTTPStatus.HTTP_REQUESTED_RANGE_NOT_SATISFIABLE:
             return HTTP_REASON_REQUESTED_RANGE_NOT_SATISFIABLE;
         case HTTPStatus.HTTP_EXPECTATION_FAILED:
             return HTTP_REASON_EXPECTATION_FAILED;
         case HTTPStatus.HTTP_INTERNAL_SERVER_ERROR:
             return HTTP_REASON_INTERNAL_SERVER_ERROR;
         case HTTPStatus.HTTP_NOT_IMPLEMENTED:
             return HTTP_REASON_NOT_IMPLEMENTED;
         case HTTPStatus.HTTP_BAD_GATEWAY:
             return HTTP_REASON_BAD_GATEWAY;
         case HTTPStatus.HTTP_SERVICE_UNAVAILABLE:
             return HTTP_REASON_SERVICE_UNAVAILABLE;
         case HTTPStatus.HTTP_GATEWAY_TIMEOUT:
             return HTTP_REASON_GATEWAY_TIMEOUT;
         case HTTPStatus.HTTP_VERSION_NOT_SUPPORTED:
             return HTTP_REASON_VERSION_NOT_SUPPORTED;
         default:
             return HTTP_REASON_UNKNOWN;
     }
 }
        internal HTTPServerResponse(HTTPServerSession session)
        {
            _session = session;

            _status = HTTPStatus.HTTP_OK;
            _reason = GetReasonForStatus(HTTPStatus.HTTP_OK);
        }