private (HttpClient, HttpContent) CreateInstance(HttpClient _client, HClientCookie _clientCookie, HClientHeader _clientHeader, string _json = null) { HttpClient client = _client; HttpContent hContent = null; client.DefaultRequestHeaders.Clear(); //Cookie if (_clientCookie != null && _clientCookie.CookieDictionary != null) { foreach (var cookie in _clientCookie.CookieDictionary) { client.DefaultRequestHeaders.TryAddWithoutValidation("Cookie", $"{cookie.Key}={cookie.Value}"); } } //Default Http Request Header if (_clientHeader != null) { client.DefaultRequestHeaders.TryAddWithoutValidation("Accept", _clientHeader.Accept); client.DefaultRequestHeaders.TryAddWithoutValidation("Referer", _clientHeader.Referer); client.DefaultRequestHeaders.TryAddWithoutValidation("UserAgent", _clientHeader.UserAgent); } //User Orijinal Headers if (_clientHeader != null && _clientHeader.headersKeyValuePairs != null) { foreach (var header in _clientHeader.headersKeyValuePairs) { client.DefaultRequestHeaders.TryAddWithoutValidation(header.Key, header.Value); } } //User Post Paramaters if (_json != null) { hContent = new StringContent(_json, Encoding.UTF8, "application/json"); } else if (_json == null && _clientHeader != null && _clientHeader.postKeyValuePairs != null) { var param = ""; foreach (var ss in _clientHeader.postKeyValuePairs) { param += $"{ss.Key}={ss.Value}&"; } hContent = new StringContent(param, Encoding.UTF8, "application/x-www-form-urlencoded"); } return(client, hContent); }
private void CreateInstance(string sessionId = null, string _idfa = null) { client = new HClient(); clientHeader = new HClientHeader(); clientCookie = new HClientCookie(); if (sessionId != null) { clientCookie.SetCookie("sessionid", sessionId); } if (idfa != null) { idfa = _idfa; } }
public async Task <string> Get(HClientCookie _clientCookie = null, HClientHeader _clientHeader = null) { var instance = CreateInstance(Client, _clientCookie, _clientHeader); Client = instance.Item1; try { Response = await Client.GetAsync(RequestUri); ResponseContent = await Response.Content.ReadAsStringAsync(); } catch (Exception ex) { Console.WriteLine(ex.Message); ResponseContent = null; } return(ResponseContent); }
public async Task <Image> GetImage(HClientCookie _clientCookie = null, HClientHeader _clientHeader = null) { var instance = CreateInstance(Client, _clientCookie, _clientHeader); Client = instance.Item1; try { Response = await Client.GetAsync(RequestUri); Stream = await Response.Content.ReadAsStreamAsync(); Image = Image.FromStream(Stream); } catch (Exception ex) { Console.WriteLine(ex.Message); Image = null; } return(Image); }