示例#1
0
        private IXmlRpcStreamRequestConfig GetConfig(HttpRequest request)
        {
            XmlRpcHttpRequestConfig rc           = new XmlRpcHttpRequestConfig();
            IXmlRpcHttpServerConfig serverConfig = (IXmlRpcHttpServerConfig)Config;

            rc.BasicEncoding         = serverConfig.BasicEncoding;
            rc.ContentLengthOptional = serverConfig.ContentLengthOptional && (request.Headers[HttpHelper.ContentLengthHeader] == null);
            rc.EnabledForExtensions  = serverConfig.EnabledForExtensions;
            rc.GzipCompressing       = HttpHelper.HasGzipEncoding(request.Headers[HttpHelper.ContentEncodingHeader]);
            rc.GzipRequesting        = HttpHelper.HasGzipEncoding(request.Headers[HttpHelper.AcceptEncodingHeader]);
            rc.Encoding             = request.ContentEncoding.WebName;
            rc.EnabledForExceptions = serverConfig.EnabledForExceptions;
            HttpHelper.ParseAuthorization(rc, request.Headers[HttpHelper.AuthorizationHeader]);
            return(rc);
        }
示例#2
0
        private XmlRpcHttpRequestConfig GetConfig(ITransportHeaders requestHeaders)
        {
            XmlRpcHttpRequestConfig rc           = new XmlRpcHttpRequestConfig();
            IXmlRpcHttpServerConfig serverConfig = (IXmlRpcHttpServerConfig)Config;

            rc.BasicEncoding         = serverConfig.BasicEncoding;
            rc.ContentLengthOptional = serverConfig.ContentLengthOptional && (HttpHelper.GetContentLength(requestHeaders) == null);
            rc.EnabledForExtensions  = serverConfig.EnabledForExtensions;
            rc.GzipCompressing       = HttpHelper.IsUsingGzipEncoding(requestHeaders);
            rc.GzipRequesting        = HttpHelper.IsAcceptingGzipEncoding(requestHeaders);
            // TODO get request encoding
            //rc.Encoding
            rc.EnabledForExceptions = serverConfig.EnabledForExceptions;
            HttpHelper.ParseAuthorization(rc, HttpHelper.GetAuthorization(requestHeaders));
            return(rc);
        }