/// <summary> /// Initializes a new request with default options. /// </summary> public SocialHttpRequest() { Method = SocialHttpMethod.Get; Encoding = Encoding.UTF8; Timeout = TimeSpan.FromSeconds(100); PostData = new SocialHttpPostData(); }
/// <summary> /// Makes a HTTP request to the underlying API based on the specified parameters. /// </summary> /// <param name="method">The HTTP method of the request.</param> /// <param name="url">The base URL of the request (no query string).</param> /// <param name="queryString">The query string.</param> /// <param name="postData">The POST data.</param> /// <returns>Returns an instance of <see cref="SocialHttpResponse"/> representing the raw response.</returns> public virtual SocialHttpResponse DoHttpRequest(SocialHttpMethod method, string url, IHttpQueryString queryString, IHttpPostData postData) { // Some input validation if (String.IsNullOrWhiteSpace(url)) throw new ArgumentNullException("url"); if (queryString == null) queryString = new SocialHttpQueryString(); if (postData == null) postData = new SocialHttpPostData(); // Initialize the request SocialHttpRequest request = new SocialHttpRequest { Method = method, Url = url, QueryString = queryString, PostData = postData }; PrepareHttpRequest(request); // Make the call to the URL return request.GetResponse(); }