HTTP服务器软件系统的设计与实现(16)_毕业论文

毕业论文移动版

毕业论文 > 计算机论文 >

HTTP服务器软件系统的设计与实现(16)


        public void Dispose()
        {
            if (managerTimer != null)
            {
                managerTimer.Change(-1, -1);
                managerTimer.Dispose();
                managerTimer = null;
            }
        }

3.2.2     HTTP Request类
HTTP服务下的Request,它包含服务器的HTTP请求信息。前面章节讨论过Request的作用,他在RFC2616中给了详细的说明, 一个请求消息是从客户端到服务器端的,在消息首行里包含方法,资源指示符,协议版本,所以HTTP Request这个类需要包括HTTP方法GET / POST,Http 类型,完整的HTTP请求,请求的完整路径,请求路径,请求路径,URL参数。
代码分析:
public class HttpRequest : ApplicationRequest
    {

        protected HttpRequestType type;

        public HttpRequest(RawRequest request)
            : base(request)
        {
            type = HttpRequestType.HttpPage;
            Requests = new Dictionary<string, string>();
            UrlParameters = new Dictionary<string, string>();
        }

        //### HTTP方法GET / POST
        public HttpMethodType Method { get; set; }
        //### Http 类型
        public HttpRequestType Type
        {
            get { return type; }
            set { type = value; }
        }

        //### 完整的HTTP请求 ex:
        public string CompleteRequest { get; set; }
        //### 请求的完整路径
        public string CompletePath { get; set; }
        //### 请求路径
        public string Path { get; set; }
        //### 请求路径
        public IList<string> Paths { get; set; }
        //### Http 请求
        public Dictionary<string, string> Requests;
        //### 查询网址参数
        public Dictionary<string, string> UrlParameters;        
        /// <summary>
        /// 返回true,如果支持Gzip压缩
        /// </summary>
        /// <returns></returns> (责任编辑:qin)