/// <summary>
 /// Initializes a new instance of the <see cref="HttpRequest" /> class.
 /// </summary>
 public HttpRequest()
 {
     _cookies = new HttpCookieCollection<IHttpCookie>();
     _files = new HttpFileCollection();
     _queryString = new ParameterCollection();
     _form = new ParameterCollection();
 }
示例#2
0
 public HttpRequest()
 {
     _cookies     = new HttpCookieCollection <IHttpCookie>();
     _files       = new HttpFileCollection();
     _queryString = new ParameterCollection();
     _form        = new ParameterCollection();
 }
示例#3
0
 public FakeHttpRequest(string url, NameValueCollection formParams, NameValueCollection queryStringParams, IHttpCookieCollection cookies)
 {
     _uri = new Uri(url);
     _formParams = formParams;
     _queryStringParams = queryStringParams;
     _cookies = cookies;
 }
        /// <summary>
        /// Add a new header
        /// </summary>
        /// <param name="name">Name of the header</param>
        /// <param name="value">Value</param>
        /// <remarks>
        /// Adding a header which already exists will just append the value to that header.
        /// </remarks>
        public override void AddHeader(string name, string value)
        {
            if (name.Equals("host", StringComparison.OrdinalIgnoreCase))
            {
                Uri = value.StartsWith("http", StringComparison.OrdinalIgnoreCase)
                          ? new Uri(string.Format("{0}{1}", value, _pathAndQuery))
                          : new Uri(string.Format("http://{0}{1}", value, _pathAndQuery));
            }
            if (name.Equals("Content-Type", StringComparison.OrdinalIgnoreCase))
            {
                ParseContentType(value);
                return;
            }
            if (name.Equals("Content-Length", StringComparison.CurrentCultureIgnoreCase))
            {
                ContentLength = int.Parse(value);
            }
            if (name.Equals("Cookie", StringComparison.OrdinalIgnoreCase))
            {
                var parser = new HttpCookieParser(value);
                _cookies = parser.Parse();
            }

            base.AddHeader(name, value);
        }
示例#5
0
 public FakeHttpRequest(string url, NameValueCollection formParams, NameValueCollection queryStringParams, IHttpCookieCollection cookies)
 {
     _uri               = new Uri(url);
     _formParams        = formParams;
     _queryStringParams = queryStringParams;
     _cookies           = cookies;
 }
示例#6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="HttpRequest" /> class.
 /// </summary>
 public HttpRequest()
 {
     this.cookies     = new HttpCookieCollection <IHttpCookie>();
     this.files       = new HttpFileCollection();
     this.queryString = new ParameterCollection();
     this.form        = new ParameterCollection();
 }
示例#7
0
 public HttpRequest(string requestString)
 {
     this.FormData         = new Dictionary <string, object>();
     this.QuerryData       = new Dictionary <string, object>();
     this.Headers          = new HttpHeaderCollection();
     this.CookieCollection = new HttpCookieCollection();
     this.ParseRequest(requestString);
 }
示例#8
0
 private HttpRequest(string path, string url, Dictionary <string, object> formData, Dictionary <string, object> queryData, HttpRequestMethod method, IHttpHeaderCollection headers, IHttpCookieCollection cookies)
 {
     Path      = path;
     Url       = url;
     FormData  = formData;
     QueryData = queryData;
     Method    = method;
     Headers   = headers;
     Cookies   = cookies;
 }
示例#9
0
        private string SetCookies(IHttpCookieCollection cookieCollection)
        {
            StringBuilder result = new StringBuilder();

            foreach (HttpCookie cookie in cookieCollection)
            {
                result.AppendLine($"{HeaderType.Types[HeaderTypeCode.SetCookie]}: {cookie.Key}={cookie.Value}");
            }

            return(result.ToString());
        }
示例#10
0
 public FakeHttpContext(string url, FakePrincipal principal, NameValueCollection formParams, NameValueCollection queryStringParams, IHttpCookieCollection cookies, Dictionary <string, object> sessionItems)
 {
     _url               = url;
     _principal         = principal;
     _formParams        = formParams;
     _queryStringParams = queryStringParams;
     _cookies           = cookies;
     _session           = new FakeHttpSessionState(sessionItems);
     _request           = new FakeHttpRequest(_url, _formParams, _queryStringParams, _cookies);
     _server            = new FakeHttpServerUtility();
     _items             = new Dictionary <string, object>();
 }
示例#11
0
        public string GetUsername(IHttpCookieCollection cookies)
        {
            if (!cookies.ContainsCookie(HttpCookie.AuthenticeKey))
            {
                return(null);
            }

            var cookie        = cookies.GetCookie(HttpCookie.AuthenticeKey);
            var cookieContent = cookie.Value;
            var username      = DecryptString(cookieContent, EncryptKey);

            return(username);
        }
示例#12
0
        public static MvcUserInfo GetUserData(IHttpCookieCollection cookieCollection, IUserCookieService cookieService, IHttpRequest request)
        {
            if (!request.Session.ContainsParameter(".auth_cake"))
            {
                return(new MvcUserInfo());
            }

            var sessionParameter = (string)request.Session.GetParameter(".auth_cake");

            try
            {
                var userName = cookieService.GetUserData(sessionParameter);
                return(userName);
            }
            catch (Exception)
            {
                return(new MvcUserInfo());
            }
        }
示例#13
0
        public static MvcUserInfo GetUserData(IHttpCookieCollection cookieCollection,
                                              IUserCookieService userCookieService)
        {
            if (!cookieCollection.ContainsCookie(".auth"))
            {
                return(new MvcUserInfo());
            }

            var cookie        = cookieCollection.GetCookie(".auth");
            var cookieContent = cookie.Value;

            try
            {
                var userName = userCookieService.GetUserData(cookieContent);
                return(userName);
            }
            catch (Exception)
            {
                return(new MvcUserInfo());
            }
        }
        /// <summary>
        /// Add a new header
        /// </summary>
        /// <param name="name">Name of the header</param>
        /// <param name="value">Value</param>
        /// <remarks>
        /// Adding a header which already exists will just append the value to that header.
        /// </remarks>
        public override void AddHeader(string name, string value)
        {
            if (name.Equals("host", StringComparison.OrdinalIgnoreCase))
            {
                Uri = value.StartsWith("http", StringComparison.OrdinalIgnoreCase)
                          ? new Uri(string.Format("{0}{1}", value, _pathAndQuery))
                          : new Uri(string.Format("http://{0}{1}", value, _pathAndQuery));
            }
            if (name.Equals("Content-Type", StringComparison.OrdinalIgnoreCase))
            {
                ParseContentType(value);
                return;
            }
            if (name.Equals("Content-Length", StringComparison.CurrentCultureIgnoreCase))
            {
                ContentLength = int.Parse(value);
            }
            if (name.Equals("Cookie", StringComparison.OrdinalIgnoreCase))
            {
                var parser = new HttpCookieParser(value);
                _cookies = parser.Parse();
            }

            base.AddHeader(name, value);
        }
示例#15
0
 public HttpResponse()
 {
     this.headers = new HttpHeaderCollection();
     this.cookies = new HttpCookieCollection();
     this.Content = new byte[0];
 }
示例#16
0
 public FakeHttpContext(string url, FakePrincipal principal, NameValueCollection formParams, NameValueCollection queryStringParams, IHttpCookieCollection cookies, Dictionary<string,object> sessionItems)
 {
     _url = url;
     _principal = principal;
     _formParams = formParams;
     _queryStringParams = queryStringParams;
     _cookies = cookies;
     _session = new FakeHttpSessionState(sessionItems);
     _request = new FakeHttpRequest(_url, _formParams, _queryStringParams, _cookies);
     _server = new FakeHttpServerUtility();
     _items = new Dictionary<string, object>();
 }