private async Task<bool> SendLoginData(string username, string password) { CookieContainer cookies = await _webManager.PostData( Constants.LOGIN_URL, string.Format( "action=login&username={0}&password={1}", username.Replace(" ", "+"), WebUtility.UrlEncode(password))); if (cookies.Count < 2) { return false; } var fixedCookieContainer = new CookieContainer(); // TODO: HUGE HACK. For some reason Windows Phone does not use the Domain Key on a cookie, but only the domain when making requests. // Windows 8 won't break on it, but Windows Phone will, since the Domain Key and Domain are different on SA. // We need to move this code to a more common place. foreach (Cookie cookie in cookies.GetCookies(new Uri(Constants.COOKIE_DOMAIN_URL))) { var fixedCookie = new Cookie(cookie.Name, cookie.Value, "/", ".somethingawful.com"); fixedCookieContainer.Add(new Uri(Constants.COOKIE_DOMAIN_URL), fixedCookie); } await _localStorageManager.SaveCookie(Constants.COOKIE_FILE, cookies, new Uri(Constants.COOKIE_DOMAIN_URL)); return true; }
public PrimeDice() { _CC = new CookieContainer(); _CC.Add(new Cookie("user", "43579", "/", "primedice.com")); _CC.Add(new Cookie("password", "ea1a3c", "/", "primedice.com")); _CC.Add(new Cookie("betting", "1", "/", "primedice.com")); }
/// <summary> /// convert cookies string to CookieContainer /// </summary> /// <param name="cookies"></param> /// <returns></returns> public static CookieContainer ConvertToCookieContainer(Dictionary<string, string> cookies) { CookieContainer cookieContainer = new CookieContainer(); foreach (var cookie in cookies) { string[] strEachCookParts = cookie.Value.Split(';'); int intEachCookPartsCount = strEachCookParts.Length; foreach (string strCNameAndCValue in strEachCookParts) { if (!string.IsNullOrEmpty(strCNameAndCValue)) { Cookie cookTemp = new Cookie(); int firstEqual = strCNameAndCValue.IndexOf("="); string firstName = strCNameAndCValue.Substring(0, firstEqual); string allValue = strCNameAndCValue.Substring(firstEqual + 1, strCNameAndCValue.Length - (firstEqual + 1)); cookTemp.Name = firstName; cookTemp.Value = allValue; cookTemp.Path = "/"; cookTemp.Domain = cookie.Key; cookieContainer.Add(cookTemp); } } } return cookieContainer; }
public override string GetVideoUrl(VideoInfo video) { CookieContainer newCc = new CookieContainer(); foreach (Cookie c in cc.GetCookies(new Uri(@"https://www.filmon.com/"))) { newCc.Add(c); } NameValueCollection headers = new NameValueCollection(); headers.Add("Accept", "*/*"); headers.Add("User-Agent", userAgent); headers.Add("X-Requested-With", "XMLHttpRequest"); string webdata = GetWebData(video.VideoUrl, (string)video.Other, newCc, headers: headers); JToken jt = JObject.Parse(webdata) as JToken; JArray streams = jt.Value<JArray>("streams"); video.PlaybackOptions = new Dictionary<string, string>(); foreach (JToken stream in streams) { string serverUrl = stream.Value<string>("url"); RtmpUrl res = new RtmpUrl(serverUrl); res.Live = true; res.PlayPath = stream.Value<string>("name"); int p = serverUrl.IndexOf("live/?id"); res.App = serverUrl.Substring(p); video.PlaybackOptions.Add(stream.Value<string>("quality"), res.ToString()); } return video.PlaybackOptions.First().Value; }
private void button2_Click(object sender, EventArgs e) { if (cookieForm.ShowDialog() == DialogResult.OK) { var site = new Uri(SteamSite._mainsite); var hugeCock = new CookieContainer(); hugeCock.Add(site, new Cookie(CookieFrm.sesid, cookieForm.textBox1.Text)); hugeCock.Add(site, new Cookie(CookieFrm.webtrade, cookieForm.textBox2.Text)); var stlogin = cookieForm.textBox3.Text; if (stlogin.Length > 17) { hugeCock.Add(site, new Cookie(CookieFrm.stlog, stlogin)); hugeCock.Add(site, new Cookie(CookieFrm.machauth + stlogin.Substring(0, 17), cookieForm.textBox4.Text)); hugeCock.Add(site, new Cookie(CookieFrm.sec, cookieForm.textBox5.Text)); Main.steam_srch.cookieCont = hugeCock; Main.scanItems.UpdateCock(hugeCock); Main.SaveBinary(Main.cockPath, Main.steam_srch.cookieCont); } else { MessageBox.Show(CookieFrm.stlog + " parameter is not correct!", "Import Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
private static async Task ProcessRepositories1(LoginUser user) { HttpClientHandler clientHandler = new HttpClientHandler(); clientHandler.ServerCertificateCustomValidationCallback = (sender, cert, chain, sslPolicyErrors) => { return(true); }; var cookieContainer = new System.Net.CookieContainer(); clientHandler.CookieContainer = cookieContainer; using (var httpClient = new HttpClient(clientHandler)) { var options = new JsonSerializerOptions { }; cookieContainer.Add(new Uri("https://35.156.189.63:50000/"), new Cookie("CompanyDB", "SBODEMOUS")); cookieContainer.Add(new Uri("https://35.156.189.63:50000/"), new Cookie("B1SESSION", "da007e8e-37f8-11eb-8000-025c0989ab50")); //StringContent content = new StringContent(JsonSerializer.Serialize(user, options), Encoding.UTF8, "application/json"); var response = await httpClient.GetAsync("https://35.156.189.63:50000/b1s/v1/BusinessPartners"); string apiResponse = await response.Content.ReadAsStringAsync(); } }
/// <summary> /// クッキーコンテナにクッキーを追加する /// domainが.hal.fscs.jpなどだと http://hal.fscs.jp でクッキーが有効にならないので.ありとなし両方指定する /// </summary> /// <param name="container"></param> /// <param name="cookie"></param> public static void AddCookieToContainer(System.Net.CookieContainer container, System.Net.Cookie cookie) { if (container == null) { throw new ArgumentNullException("container"); } if (cookie == null) { throw new ArgumentNullException("cookie"); } container.Add(cookie); if (cookie.Domain.StartsWith(".")) { container.Add(new System.Net.Cookie() { Comment = cookie.Comment, CommentUri = cookie.CommentUri, Discard = cookie.Discard, Domain = cookie.Domain.Substring(1), Expired = cookie.Expired, Expires = cookie.Expires, HttpOnly = cookie.HttpOnly, Name = cookie.Name, Path = cookie.Path, Port = cookie.Port, Secure = cookie.Secure, Value = cookie.Value, Version = cookie.Version, }); } }
public void GetCookies_AddCookiesWithImplicitDomain_CookiesReturnedOnlyForExactDomainMatch() { const string SchemePrefix = "http://"; const string OriginalDomain = "contoso.com"; var container = new CookieContainer(); var cookie1 = new Cookie(CookieName1, CookieValue1); var cookie2 = new Cookie(CookieName2, CookieValue2) { Version = 1 }; var uri = new Uri(SchemePrefix + OriginalDomain); container.Add(uri, cookie1); container.Add(uri, cookie2); var cookies = container.GetCookies(uri); Assert.Equal(2, cookies.Count); Assert.Equal(OriginalDomain, cookies[CookieName1].Domain); Assert.Equal(OriginalDomain, cookies[CookieName2].Domain); uri = new Uri(SchemePrefix + "www." + OriginalDomain); cookies = container.GetCookies(uri); Assert.Equal(0, cookies.Count); uri = new Uri(SchemePrefix + "x.www." + OriginalDomain); cookies = container.GetCookies(uri); Assert.Equal(0, cookies.Count); uri = new Uri(SchemePrefix + "y.x.www." + OriginalDomain); cookies = container.GetCookies(uri); Assert.Equal(0, cookies.Count); uri = new Uri(SchemePrefix + "z.y.x.www." + OriginalDomain); cookies = container.GetCookies(uri); Assert.Equal(0, cookies.Count); }
public static CookieContainer GenerateCookies() { var cookies = new CookieContainer(); var target = new Uri("http://steamcommunity.com"); cookies.Add(new Cookie("sessionid", Settings.Default.sessionid) { Domain = target.Host }); cookies.Add(new Cookie("steamLogin", Settings.Default.steamLogin) { Domain = target.Host }); cookies.Add(new Cookie("steamparental", Settings.Default.steamparental) { Domain = target.Host }); return cookies; }
private CookieContainer GenerateCookies() { var cookies = new CookieContainer(); var target = new Uri("http://steamcommunity.com"); cookies.Add(new Cookie("sessionid", Settings.Default.sessionid) { Domain = target.Host }); cookies.Add(new Cookie("steamLogin", Settings.Default.steamLogin) { Domain = target.Host }); cookies.Add(new Cookie("steamparental", Settings.Default.steamparental) { Domain = target.Host }); cookies.Add(new Cookie("steamRememberLogin", Settings.Default.steamRememberLogin) { Domain = target.Host }); cookies.Add(new Cookie(GetSteamMachineAuthCookieName(), Settings.Default.steamMachineAuth) { Domain = target.Host }); return cookies; }
/// <summary> /// Create a client to make requests requiring authentication /// </summary> /// <returns></returns> protected RestClient CreateAuthClient() { RestClient client = CreateClient(); CookieContainer container = new CookieContainer(); container.Add(new Uri(AppSettings.ApiUri), new Cookie("ss-id", AppSettings.SsId)); container.Add(new Uri(AppSettings.ApiUri), new Cookie("ss-pid", AppSettings.SsPid)); client.CookieContainer = container; return client; }
private void button2_Click(object sender, EventArgs e) { if (cookieForm.ShowDialog() == DialogResult.OK) { var site = new Uri(SteamSite._mainsite); var hugeCock = new CookieContainer(); hugeCock.Add(site, new Cookie(CookieFrm.sesid, cookieForm.textBox1.Text)); hugeCock.Add(site, new Cookie(CookieFrm.webtrade, cookieForm.textBox2.Text)); hugeCock.Add(site, new Cookie(CookieFrm.stlog, cookieForm.textBox3.Text)); Main.steam_srch.cookieCont = hugeCock; Main.SaveBinary(Main.cockPath, Main.steam_srch.cookieCont); } }
private CookieContainer CreateCount11Container() { CookieContainer cc1 = new CookieContainer(); // Add(Cookie) cc1.Add(c1); cc1.Add(c2); cc1.Add(c3); cc1.Add(c4); // Add(CookieCollection) CookieCollection cc2 = new CookieCollection(); cc2.Add(c5); cc2.Add(c6); cc2.Add(c7); cc1.Add(cc2); // Add(Uri, Cookie) cc1.Add(u4, c8); cc1.Add(u4, c9); // Add(Uri, CookieCollection) cc2 = new CookieCollection(); cc2.Add(c10); cc2.Add(c11); cc1.Add(u5, cc2); return cc1; }
private Bitmap GetCapthcaFromPage(string url) { HttpWebRequest request = (HttpWebRequest) WebRequest.Create(url); CookieContainer cookieJar = new CookieContainer(); cookieJar.Add(new Uri("http://forum.ipadiz.ru/"), new Cookie("phpbb3_jornv_k", "")); cookieJar.Add(new Uri("http://forum.ipadiz.ru/"), new Cookie("phpbb3_jornv_u", "1")); cookieJar.Add(new Uri("http://forum.ipadiz.ru/"), new Cookie("style_cookie", "null")); cookieJar.Add(new Uri("http://forum.ipadiz.ru/"), new Cookie("phpbb3_jornv_sid", _sid)); request.CookieContainer = cookieJar; HttpWebResponse response = (HttpWebResponse) request.GetResponse(); Stream st = response.GetResponseStream(); Bitmap bitmap = new Bitmap(st); return bitmap; }
public void StartSession() { //Run selenium ChromeDriver cd = new ChromeDriver(Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "lib")); cd.Url = @"https://login.yahoo.com/config/login?.src=fpctx&.intl=uk&.lang=en-GB&.done=https://uk.yahoo.com/%3fp=us"; cd.Navigate(); IWebElement e = cd.FindElementById("login-username"); e.SendKeys(""); e = cd.FindElementById("login-passwd"); e.SendKeys(""); e = cd.FindElementById("login-signin"); e.Click(); CookieContainer cc = new CookieContainer(); //Get the cookies foreach (Cookie c in cd.Manage().Cookies.AllCookies) { string name = c.Name; string value = c.Value; cc.Add(new System.Net.Cookie(name, value, c.Path, c.Domain)); } //cd.Quit(); //Fire off the request HttpWebRequest hwr = (HttpWebRequest)HttpWebRequest.Create("https://uk.finance.yahoo.com/portfolio/pf_15/view/dv"); hwr.CookieContainer = cc; hwr.Method = "POST"; hwr.ContentType = "application/x-www-form-urlencoded"; StreamWriter swr = new StreamWriter(hwr.GetRequestStream()); swr.Write("feeds=35"); swr.Close(); WebResponse wr = hwr.GetResponse(); string s = new StreamReader(wr.GetResponseStream()).ReadToEnd(); }
public static CookieContainer LoadCookies(string file) { CookieContainer cookies = new CookieContainer(); foreach (Cookie cookie in zmongo.BsonRead<Cookie>(file)) cookies.Add(cookie); return cookies; }
public bool SetPrcCookie(string key, string val) { try { var baseAddress = new Uri("http://example.com"); var cookieContainer = new CookieContainer(); using (var handler = new HttpClientHandler() { CookieContainer = cookieContainer }) using (var client = new HttpClient(handler) { BaseAddress = baseAddress }) { var content = new FormUrlEncodedContent(new[] { new KeyValuePair<string, string>(key, val), }); cookieContainer.Add(baseAddress, new Cookie("CookieName", "cookie_value")); var result = client.PostAsync("/", content).Result; result.EnsureSuccessStatusCode(); return true; } } catch (Exception ex) { throw ex; } }
public static void AddCommonHeadersToHttpRequest( HttpWebRequest request, CookieCollection cookies, RequestHeaders headers, Uri baseUri, string referer, string method, bool followRedirect = true) { // add cookies to request var cookieContainer = new CookieContainer(); if (cookies != null) cookieContainer.Add(cookies); request.CookieContainer = cookieContainer; request.Method = method; request.AllowAutoRedirect = followRedirect; request.KeepAlive = true; request.ContentType = headers.ContentType; request.PreAuthenticate = headers.PreAuthenticate; request.Host = headers.Host; request.UserAgent = headers.UserAgent; request.Accept = headers.Accept; request.Headers.Add("Accept-Language", headers.AcceptLanguage); request.Headers.Add("Accept-Encoding", headers.AcceptEncoding); request.Headers.Add("Accept-Charset", headers.AcceptCharset); Uri uriResult; if (Uri.TryCreate(baseUri, referer, out uriResult)) request.Referer = uriResult.AbsoluteUri; }
public static CookieContainer Get_Login() { CookieContainer cc = new CookieContainer(); string FormURL = "https://confluence.englishtown.com/dologin.action"; //处理表单的绝对URL地址 string FormData = "os_username=jason.cheng&os_password=efef@123"; //表单需要提交的参数,注意改为你已注册的信息。 ASCIIEncoding encoding = new ASCIIEncoding(); byte[] data = encoding.GetBytes(FormData); HttpWebRequest request = (HttpWebRequest)WebRequest.Create(FormURL); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; request.ContentLength = data.Length; request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)"; //模拟一个UserAgent Stream newStream = request.GetRequestStream(); newStream.Write(data, 0, data.Length); newStream.Close(); request.CookieContainer = cc; HttpWebResponse response = (HttpWebResponse)request.GetResponse(); cc.Add(response.Cookies); Stream stream = response.GetResponseStream(); string WebContent = new StreamReader(stream, System.Text.Encoding.Default).ReadToEnd(); return cc; }
public string Httppost(string url, string postData) { Encoding encoding = Encoding.GetEncoding("utf-8"); byte[] bytesToPost = encoding.GetBytes(postData); CookieContainer cookieCon = new CookieContainer(); if (cookie.Count > 0) { cookieCon.Add(new Uri(url), cookie); } HttpWebRequest httpRequest = (HttpWebRequest)WebRequest.Create(url); httpRequest.CookieContainer = cookieCon; httpRequest.ContentType = "application/x-www-form-urlencoded"; httpRequest.Method = "POST"; httpRequest.ContentLength = bytesToPost.Length; Stream requestStream = httpRequest.GetRequestStream(); requestStream.Write(bytesToPost, 0, bytesToPost.Length); requestStream.Close(); Stream responseStream = httpRequest.GetResponse().GetResponseStream(); string stringResponse = string.Empty; StreamReader responseReader = new StreamReader(responseStream, Encoding.UTF8); stringResponse = responseReader.ReadToEnd(); responseReader.Close(); cookie = httpRequest.CookieContainer.GetCookies(new Uri(url)); return stringResponse; }
public async Task Providing_Valid_Credentials_Returns_True() { var cookieContainer = new CookieContainer(); cookieContainer.Add(new Uri("http://foo.com"), new Cookie("Foo", "bar")); cookieContainer.Add(new Uri("http://foo.com"), new Cookie("Bar", "Foo")); var webManager = new FakeWebManager { CookiesToReturn = cookieContainer, }; var localStorage = new FakeLocalStorageManager(); var am = new AuthenticationManager(webManager, localStorage); const bool expected = true; bool actual = await am.Authenticate("foo", "bar"); Assert.AreEqual(expected, actual); }
protected void SetClientCookies(Uri uri) { if (_cookies.Count > 0) { CookieContainer cookieContainer = new System.Net.CookieContainer(); foreach (Cookie cookie in _cookies) { cookieContainer.Add(uri, cookie); } HttpClientHandler httpClientHandler = new HttpClientHandler() { CookieContainer = cookieContainer, UseCookies = true, }; _client = new HttpClient(httpClientHandler); } else { _client = new HttpClient(); } _client.DefaultRequestHeaders.ExpectContinue = false; //Remove "Expect: 100 continue": }
public CookieContainer GetCookieContainer(string dom) { CookieContainer container = new CookieContainer(); try { foreach (string cookie in webBrowser1.Document.Cookie.Split(';')) { string name = cookie.Split('=')[0]; string value = cookie.Substring(name.Length + 1); string path = "/"; string domain = dom; //change to your domain name container.Add(new Cookie(name.Trim(), value.Trim(), path, domain)); //Console.Out.WriteLine("{0}=>{1}", name.Trim(),value.Trim()); if (name.Trim() == "apiKey") { ApiKey = value.Trim(); Close(); } } } catch (Exception) { // ignored } return container; }
/// <summary> /// Performs active authentication against ADFS using the trust/13/usernamemixed ADFS endpoint. /// </summary> /// <param name="siteUrl">Url of the SharePoint site that's secured via ADFS</param> /// <param name="serialNumber">Serial Number of the Current User > My Certificate to use to authenticate </param> /// <param name="certificateMixed">Uri to the ADFS certificatemixed endpoint</param> /// <param name="relyingPartyIdentifier">Identifier of the ADFS relying party that we're hitting</param> /// <param name="logonTokenCacheExpirationWindow"></param> /// <returns>A cookiecontainer holding the FedAuth cookie</returns> public CookieContainer GetFedAuthCookie(string siteUrl, string serialNumber, Uri certificateMixed, string relyingPartyIdentifier, int logonTokenCacheExpirationWindow) { CertificateMixed adfsTokenProvider = new CertificateMixed(); var token = adfsTokenProvider.RequestToken(serialNumber, certificateMixed, relyingPartyIdentifier); string fedAuthValue = TransformSamlTokenToFedAuth(token.TokenXml.OuterXml, siteUrl, relyingPartyIdentifier); // Construct the cookie expiration date TimeSpan lifeTime = SamlTokenlifeTime(token.TokenXml.OuterXml); if (lifeTime == TimeSpan.Zero) { lifeTime = new TimeSpan(0, 60, 0); } int cookieLifeTime = Math.Min((lifeTime.Hours * 60 + lifeTime.Minutes), logonTokenCacheExpirationWindow); DateTime expiresOn = DateTime.Now.AddMinutes(cookieLifeTime); CookieContainer cc = null; if (!string.IsNullOrEmpty(fedAuthValue)) { cc = new CookieContainer(); Cookie samlAuth = new Cookie("FedAuth", fedAuthValue); samlAuth.Expires = expiresOn; samlAuth.Path = "/"; samlAuth.Secure = true; samlAuth.HttpOnly = true; Uri samlUri = new Uri(siteUrl); samlAuth.Domain = samlUri.Host; cc.Add(samlAuth); } return cc; }
/// <summary> /// Executes the provided request asynchronously, returning the response object. /// </summary> /// <param name="request"><see cref="ISteamRequest"/> object for execution.</param> /// <returns><see cref="ISteamResponse"/> object containing the result of the request.</returns> public async Task<ISteamResponse> ExecuteAsync( ISteamRequest request ) { AuthenticateClient( this, request ); HttpRequestMessage httpRequest = BuildHttpRequest( request ); CookieContainer cookieContainer = new CookieContainer(); if( request.Cookies == null || request.Cookies.Count > 0 ) { foreach( Cookie cookie in request.Cookies ) cookieContainer.Add( httpRequest.RequestUri, cookie ); } HttpClientHandler httpHandler = new HttpClientHandler(); httpHandler.CookieContainer = cookieContainer; using( var httpClient = new HttpClient( httpHandler ) ){ httpClient.Timeout = TimeSpan.FromMilliseconds( ( ( request.Timeout > 0 ) ? request.Timeout : this.Timeout ) ); try { request.IncreaseNumAttempts(); return ConvertToResponse( request, await httpClient.SendAsync( httpRequest ), cookieContainer ); }catch( Exception ex ) { if( ex.InnerException != null && ex.InnerException is WebException ) return CreateErrorResponse( request, ex.InnerException ); return CreateErrorResponse( request, ex ); } } }
public async Task<bool> ExecutePostRequest(string request, string postParams) { var cookies = new CookieContainer(); HttpClient httpClient = new HttpClient(new HttpClientHandler() { CookieContainer = cookies }); byte[] login = UTF8Encoding.UTF8.GetBytes(this.login + ":" + password); httpClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Basic", Convert.ToBase64String(login)); cookies.Add(new Uri(request), new Cookie("atl.xsrf.token", atl_token)); var postRequest = new HttpRequestMessage(HttpMethod.Post, request); var response = await httpClient.PostAsync(request, new StringContent(postParams, Encoding.UTF8, "application/x-www-form-urlencoded")); var responseMessage = response.Content.ReadAsStringAsync().GetAwaiter().GetResult(); if (verbose) { Console.WriteLine(responseMessage); } //dynamic responseObj = JsonConvert.DeserializeObject(responseMessage); //var messageFromServer = responseObj.status.Value; //var t = responseObj.fieldErrors.variableKey; return response.IsSuccessStatusCode && !responseMessage.Contains("Error"); }
public void GetCookies_AddCookieVersion0WithExplicitDomain_CookieReturnedForDomainAndSubdomains() { const string SchemePrefix = "http://"; const string OriginalDomain = "contoso.com"; var container = new CookieContainer(); var cookie1 = new Cookie(CookieName1, CookieValue1) { Domain = OriginalDomain }; container.Add(new Uri(SchemePrefix + OriginalDomain), cookie1); var uri = new Uri(SchemePrefix + OriginalDomain); var cookies = container.GetCookies(uri); Assert.Equal(1, cookies.Count); Assert.Equal(OriginalDomain, cookies[CookieName1].Domain); uri = new Uri(SchemePrefix + "www." + OriginalDomain); cookies = container.GetCookies(uri); Assert.Equal(1, cookies.Count); uri = new Uri(SchemePrefix + "x.www." + OriginalDomain); cookies = container.GetCookies(uri); Assert.Equal(1, cookies.Count); uri = new Uri(SchemePrefix + "y.x.www." + OriginalDomain); cookies = container.GetCookies(uri); Assert.Equal(1, cookies.Count); uri = new Uri(SchemePrefix + "z.y.x.www." + OriginalDomain); cookies = container.GetCookies(uri); Assert.Equal(1, cookies.Count); }
public override ImageViewURLReplaceItem Replace(string url) { string replacedReferer = Pattern.Replace(url, string.IsNullOrEmpty(OptionReferer) ? Referer : OptionReferer); string contents; CookieContainer cookieContainer = new CookieContainer(); using (HttpWebResponse res = InternetClient.GetResponse(replacedReferer, url, null))//refererで内容取得,画像urlをリファラとして送信 { cookieContainer.Add(res.Cookies); if (res.StatusCode != HttpStatusCode.OK) { throw new WebException("cannot get webdata for extract url"); } using (Stream st = res.GetResponseStream()) using (StreamReader sr = new StreamReader(st, Common.Options.InternetOptions.CurrentEncoding)) { contents = sr.ReadToEnd(); } } string replacement = Pattern.Replace(url, Replacement); string extractReplacement = CorrectExtractRegex(replacement); string replacedExtractPattern = Pattern.Replace(url, ExtractPattern); string matchString = Regex.Match(contents, replacedExtractPattern).Value; string imageUrl = Regex.Replace(matchString, replacedExtractPattern, extractReplacement); ImageViewURLReplaceItem result = Uri.IsWellFormedUriString(imageUrl, UriKind.Absolute) ? new ImageViewURLReplaceItem(imageUrl, replacedReferer, cookieContainer) : ImageViewURLReplaceItem.Empty; return result; }
private async void OnIdentityProviderTapped(object sender, TappedRoutedEventArgs e) { var identityProvider = (IdentityProvider)((FrameworkElement)e.OriginalSource).DataContext; var webAuthenticationResult = await WebAuthenticationBroker.AuthenticateAsync( WebAuthenticationOptions.None, new Uri(identityProvider.LoginUrl), new Uri("http://authentication.brainthud.com/api/federationcallback/end")); var start = webAuthenticationResult.ResponseData.LastIndexOf('=') + 1; var nameIdentifier = webAuthenticationResult.ResponseData.Substring(start, webAuthenticationResult.ResponseData.Length - start); var cookies = this.getCookies(nameIdentifier); var uri = new Uri(@"http://www.brainthud.com/api/Cards/"); var cookieContainer = new CookieContainer(); foreach(var cookie in cookies) { var cookieItem = new Cookie(cookie.Key, cookie.Value); cookieContainer.Add(uri, cookieItem); } var handler = new HttpClientHandler(); handler.CookieContainer =cookieContainer; var client = new HttpClient(handler); var response = client.GetAsync(uri).Result; var result = response.Content.ReadAsStringAsync().Result; var x = result; }
public static FileInfo getPageInfo(string requestUrl, Dictionary<string, string> postData, CookieContainer cookies) { string baseUrl = ConfigurationManager.AppSettings["Importer_BaseUrl"]; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(baseUrl + requestUrl); request.KeepAlive = true; request.CookieContainer = cookies; request.ReadWriteTimeout = 3*1000; request.Timeout = 3*1000; request.Accept = "*"; if(postData.Count < 1) { request.Method = "GET"; } else { StringBuilder postBuilder = new StringBuilder(); foreach(KeyValuePair<string, string> kvp in postData) { postBuilder.Append(HttpUtility.UrlEncode(kvp.Key, encoding)); postBuilder.Append('='); postBuilder.Append(HttpUtility.UrlEncode(kvp.Value, encoding)); } byte[] postBytes = Encoding.ASCII.GetBytes(postBuilder.ToString()); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; request.ContentLength = postBytes.Length; Stream stream = request.GetRequestStream(); stream.Write(postBytes, 0, postBytes.Length); stream.Close(); } request.UserAgent = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; FDM; .NET4.0C; .NET4.0E)"; using(HttpWebResponse response = TryGetResponse(request)) { cookies.Add(response.Cookies); byte[] content; using(Stream responseStream = response.GetResponseStream()) { using(MemoryStream memoryStream = new MemoryStream()) { byte[] buffer = new byte[BUFFER]; int bytes; while((bytes = responseStream.Read(buffer, 0, BUFFER)) > 0) { memoryStream.Write(buffer, 0, bytes); } content = memoryStream.ToArray(); } } if(response.ContentLength > 0 && content.Length != response.ContentLength) { throw new ApplicationException("incomplete file (expected " + response.ContentLength + ", got " + content.Length + ")"); } FileInfo result = new FileInfo { dataStream = new MemoryStream(content), fileName = response.ResponseUri.Segments.Last(), filePath = response.ResponseUri.AbsolutePath, fileSize = response.ContentLength, lastModified = response.LastModified, }; response.Close(); return result; } }
public bool Autentica(string username, string password) { try { var logonUrl = string.Format("http://{0}/CookieAuth.dll?Logon", Site); _container = new CookieContainer(); //prima richiesta var request = (HttpWebRequest)WebRequest.Create(logonUrl); request.CookieContainer = _container; request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; var stream = request.GetRequestStream(); string completeUsername = string.Format("{0}%5C{1}", Domain, username); var postData = string.Format("curl=Z2F&flags=0&forcedownlevel=0&formdir=3&username={0}&password={1}&SubmitCreds=Accedi", completeUsername, password); using (var sw = new StreamWriter(stream)) { sw.Write(postData); } var rs = request.GetResponse() as HttpWebResponse; foreach (Cookie c in rs.Cookies) _container.Add(c); return true; } catch(Exception fault) { throw new Exception("Errore Autenticazione", fault); } }
private CookieContainer MyGetWebData(string url, string postData, CookieContainer cc) { HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest; request.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate; // turn on automatic decompression of both formats so we can say we accept them request.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip,deflate"); // we accept compressed content request.CookieContainer = cc; request.Accept = "*/*"; request.UserAgent = OnlineVideoSettings.Instance.UserAgent; byte[] data = Encoding.UTF8.GetBytes(postData); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; request.ContentLength = data.Length; request.ProtocolVersion = HttpVersion.Version10; Stream requestStream = request.GetRequestStream(); requestStream.Write(data, 0, data.Length); requestStream.Close(); request.AllowAutoRedirect = false; using (HttpWebResponse response = (HttpWebResponse)request.GetResponse()) { };//just to get the cookies CookieContainer result = new CookieContainer(); foreach (Cookie cookie in cc.GetCookies(new Uri("https://tmp.tweakers.net"))) { cookie.Domain = new Uri(baseUrl).Host; result.Add(cookie); } return result; }
/// <summary> /// 获取网页HTML代码 /// </summary> /// <param name="url">网址</param> /// <param name="cookie">cookie</param> /// <returns></returns> public static string GetHTML(string url, CookieCollection cookie) { CookieContainer cc = new CookieContainer(); cc.Add(cookie); Uri uri = new Uri(url); HttpWebRequest hwReq = (HttpWebRequest)WebRequest.Create(uri); hwReq.CookieContainer = cc; HttpWebResponse hwRes; try { hwRes = (HttpWebResponse)hwReq.GetResponse(); } catch { return "NONE"; } hwReq.Method = "Get"; hwReq.KeepAlive = false; StreamReader reader = new StreamReader(hwRes.GetResponseStream(), System.Text.Encoding.GetEncoding("GB2312")); return reader.ReadToEnd(); }
private System.Net.CookieContainer SetCookieContainer(string sPage) { System.Net.CookieContainer oCookieContainerObject = new System.Net.CookieContainer(); System.Net.Cookie oCookie = default(System.Net.Cookie); for (Int32 c = 0; c <= oCookieCollection.Count - 1; c++) { oCookie = new System.Net.Cookie(); oCookie.Name = oCookieCollection[c].Name; oCookie.Value = oCookieCollection[c].Value; oCookie.Domain = new Uri(sPage).Host; oCookie.Secure = false; oCookieContainerObject.Add(oCookie); } return(oCookieContainerObject); }
/// <inheritdoc/> public override void PreInitialize() { IocManager.Register <IBlocksAntiForgeryWebConfiguration, BlocksAntiForgeryWebConfiguration>(); IocManager.Register <IBlocksWebLocalizationConfiguration, BlocksWebLocalizationConfiguration>(); IocManager.Register <IWebEmbeddedResourcesConfiguration, WebEmbeddedResourcesConfiguration>(); IocManager.Register <IBlocksAntiForgeryConfiguration, BlocksAntiForgeryConfiguration>(); IocManager.Register <IBlocksWebModuleConfiguration, BlocksWebModuleConfiguration>(); // IocManager.Register<IAbpWebModuleConfiguration, AbpWebModuleConfiguration>(); // // Configuration.ReplaceService<IPrincipalAccessor, HttpContextPrincipalAccessor>(DependencyLifeStyle.Transient); // Configuration.ReplaceService<IClientInfoProvider, WebClientInfoProvider>(DependencyLifeStyle.Transient); // // Configuration.MultiTenancy.Resolvers.Add<DomainTenantResolveContributor>(); // Configuration.MultiTenancy.Resolvers.Add<HttpHeaderTenantResolveContributor>(); // Configuration.MultiTenancy.Resolvers.Add<HttpCookieTenantResolveContributor>(); IocManager.Register <HttpContextModel, HttpContextModel>((kernel, componentModel, creationContext) => { var ru = HttpContext.Current.Request; var cookies = new System.Net.CookieContainer() { }; for (int i = 0; i < ru.Cookies.Count; i++) { var cook = ru.Cookies[i]; cookies.Add(new System.Net.Cookie(cook.Name, cook.Value, cook.Path, ru.ServerVariables["Server_Name"])); } var heads = new WebHeaderCollection(); heads.Add("X-XSRF-TOKEN", ru.Headers.Get("X-XSRF-TOKEN")); //for (int i = 0; i < ru.Cookies.Count; i++) //{ // var head = ru.Headers[i]; // heads.Add(head, ru.Headers.Get(head)); //} return(new HttpContextModel() { RequestUrl = ru.Url, CookieCollection = cookies, webHeaderCollection = heads }); }, Abp.Dependency.DependencyLifeStyle.Transient); AddIgnoredTypes(); }
public static void HttpDownload(string savefilename, string url, string referer = "", InputFormRef.AutoPleaseWait pleaseWait = null, System.Net.CookieContainer cookie = null) { HttpWebRequest request = HttpMakeRequest(url, referer, cookie); WebResponse rsp = request.GetResponse(); using (Stream output = File.OpenWrite(savefilename)) using (Stream input = rsp.GetResponseStream()) { byte[] buffer = new byte[1024 * 8]; int totalSize = (int)rsp.ContentLength; int readTotalSize = 0; int bytesRead; while ((bytesRead = input.Read(buffer, 0, buffer.Length)) > 0) { output.Write(buffer, 0, bytesRead); if (pleaseWait != null) { readTotalSize += bytesRead; if (totalSize == -1) { pleaseWait.DoEvents("Download: " + readTotalSize + "/" + "???"); } else { pleaseWait.DoEvents("Download: " + readTotalSize + "/" + totalSize); } } } } rsp.Close(); if (cookie != null) { System.Net.CookieCollection cookies = request.CookieContainer.GetCookies(request.RequestUri); cookie.Add(cookies); } }
public static HttpWebClientProtocol CreateClient(Uri uri, WebHeaderCollection headers = null, CookieCollection cookies = null) { CookieContainer cookieContainer = new System.Net.CookieContainer(); if (cookies != null) { if (cookies.Count > 0) { foreach (Cookie cookie in cookies) { cookieContainer.Add(uri, cookie); } } } System.Net.Http.HttpClientHandler httpClientHandler = new System.Net.Http.HttpClientHandler() { CookieContainer = cookieContainer, UseCookies = true, }; HttpClient client = new System.Net.Http.HttpClient(httpClientHandler, true); return(new HttpWebClientProtocol(client, headers)); }
//httpでそこそこ怪しまれずに通信する public static string HttpGet(string url, string referer = "", System.Net.CookieContainer cookie = null) { HttpWebRequest request = HttpMakeRequest(url, referer, cookie); string r = ""; WebResponse rsp = request.GetResponse(); Stream stm = rsp.GetResponseStream(); if (stm != null) { StreamReader reader = new StreamReader(stm, Encoding.UTF8); r = reader.ReadToEnd(); stm.Close(); } rsp.Close(); if (cookie != null) { System.Net.CookieCollection cookies = request.CookieContainer.GetCookies(request.RequestUri); cookie.Add(cookies); } return(r); }
public override WebResponse GetResponse() { lock (this) { if (_isAborted) { throw new WebException("The operation has been aborted.", WebExceptionStatus.RequestCanceled); } if (!_isConnectionOpened) { OpenConnection(); } if (_response == null) { try { synchHeaders(); InternalExecuteMethod(); int numOfRedirects = 0; while (isRedirectNeeded(_method) && _allowAutoRedirect && numOfRedirects < MaxAutoRedirections) { if (!HandleManualyRedirect()) { break; } numOfRedirects++; } //todo right place to re-put all headers again... mainsoft.apache.commons.httpclient.Header hostHeader = _method.getRequestHeader("Host"); if (hostHeader != null) { Headers.SetInternal("Host", hostHeader.getValue()); } _response = new HttpWebResponse(_method, _state, _stateCache, GetAddress(), this.MethodName); if (_response != null && _response.Cookies != null && _response.Cookies.Count > 0) { if (CookieContainer != null) { foreach (Cookie cooky in _response.Cookies) { CookieContainer.Add(GetAddress(), cooky); } } } _hasResponse = true; int respCodeAsInt = (int)_response.StatusCode; if (respCodeAsInt >= 400) { // The WebException contains the readable (not closed) response stream. // So, in case of WebException, we should read all data from the // network response stream into the memory stream, and after that // close the underlying network stream. The following requests to read // from the stream will actually read from the memory stream. // So, the this.Abort() should not be called in this case. _response.ReadAllAndClose(); //this.Abort(); throw new WebException("The remote server returned an error: (" + respCodeAsInt + ") " + _response.StatusCode, null, WebExceptionStatus.ProtocolError, _response); } Header location = _method.getResponseHeader("location"); if (isRedirectNeeded(_method) && location == null && _method.getFollowRedirects()) { // See comments above for the error >= 400 _response.ReadAllAndClose(); //this.Abort(); throw new WebException("Got response code " + _response.StatusCode + ", but no location provided", null, WebExceptionStatus.ProtocolError, _response); } } catch (ProtocolException e) { throw new WebException("", e); } catch (java.net.ConnectException e) { throw new WebException("Unable to connect to the remote server.", e); } catch (java.net.SocketTimeoutException e) { throw new WebException("Timeout exceeded", e); } catch (java.io.IOException e) { throw new WebException("", e); } } return(_response); } }
public static string HttpPost(string Url, string postDataStr) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; request.ContentLength = postDataStr.Length; request.KeepAlive = true; if (cc != null) { request.CookieContainer = cc; } request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36"; StreamWriter writer = new StreamWriter(request.GetRequestStream(), Encoding.ASCII); writer.Write(postDataStr); writer.Flush(); try { HttpWebResponse response = (HttpWebResponse)request.GetResponse(); if (response.StatusCode != HttpStatusCode.OK) { return(response.StatusCode.ToString()); } string encoding = response.ContentEncoding; if (encoding == null || encoding.Length < 1) { encoding = "UTF-8"; //默认编码 } string[] cookies = response.Headers.GetValues("Set-Cookie"); if (cookies != null && cookies.Length > 0) { foreach (string cookie in cookies) { string[] cs = cookie.Split(';'); foreach (string ca in cs) { string[] kv = ca.Split('='); if (kv.Length == 2) { Cookie c = new Cookie(kv[0].TrimStart(' '), kv[1], "/", "english.ulearning.cn"); if (cc == null) { cc = new CookieContainer(); } cc.Add(c); } } } } StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding(encoding)); string retString = reader.ReadToEnd(); return(retString); } catch { return(""); } }
protected virtual HttpWebResponse GetResponse(HttpMethod method, bool autoRedirect) { _initRequest = false; if (method == null) { method = _content.HasBody ? HttpMethod.Post : HttpMethod.Get; } _request.Method = method.Method; _request.AllowAutoRedirect = autoRedirect; CopyHeaders(); if (method == HttpMethod.Post) { if (_content.Files.Count > 0) { var sb = new StringBuilder(); // http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4 string boundary = DateTime.Now.Ticks.ToString("x"); byte[] beginBoundary = Encoding.ASCII.GetBytes(string.Format("--{0}{1}", boundary, E.NewLine)), endBoundary = Encoding.ASCII.GetBytes(string.Format("--{0}--{1}", boundary, E.NewLine)); _request.ContentType = string.Format("multipart/form-data; boundary={0}", boundary); long contentLength = 0L; var methodQueue = new Queue <Action <Stream> >(); for (int i = 0; i < _content.Form.Count; i++) { sb.Length = 0; sb.AppendFormat("Content-Disposition: form-data; name=\"{0}\"{1}{1}", _content.Form.GetKey(i), E.NewLine); sb.AppendFormat("{0}{1}", _content.Form.Get(i), E.NewLine); byte[] body = Encoding.UTF8.GetBytes(sb.ToString()); contentLength += beginBoundary.LongLength + body.LongLength; methodQueue.Enqueue(new Action <Stream>(stream => { stream.Write(beginBoundary, 0, beginBoundary.Length); stream.Write(body, 0, body.Length); })); } byte[] endOfFile = Encoding.ASCII.GetBytes(E.NewLine); foreach (var file in _content.Files) { sb.Length = 0; sb.AppendFormat("Content-Disposition: form-data; name=\"{0}\"; filename=\"{1}\"{2}", file.InputName, System.Web.HttpUtility.UrlEncode(file.FileName), E.NewLine); sb.AppendFormat("Content-Type: {0}{1}{1}", file.ContentType, E.NewLine); byte[] body = Encoding.UTF8.GetBytes(sb.ToString()); contentLength += beginBoundary.LongLength + body.LongLength + file.ContentLength + endOfFile.LongLength; methodQueue.Enqueue(new Action <Stream>(stream => { stream.Write(beginBoundary, 0, beginBoundary.Length); stream.Write(body, 0, body.Length); file.InputStream.FixedCopyTo(stream); stream.Write(endOfFile, 0, endOfFile.Length); })); } _request.ContentLength = contentLength + endBoundary.LongLength; Stream requestStream = _request.GetRequestStream(); while (methodQueue.Count > 0) { methodQueue.Dequeue()(requestStream); } requestStream.Write(endBoundary, 0, endBoundary.Length); requestStream.Close(); } else { _request.ContentType = "application/x-www-form-urlencoded"; if (_content.Form.Count > 0) { byte[] body = Encoding.UTF8.GetBytes(_content.GetFormString()); _request.ContentLength = body.LongLength; Stream requestStream = _request.GetRequestStream(); requestStream.Write(body, 0, body.Length); requestStream.Close(); } } } var response = (HttpWebResponse)_request.GetResponse(); _referer = response.ResponseUri.AbsoluteUri; if (this.UseCookies) { _cookieContainer.Add(response.ResponseUri, response.Cookies); } _proxyAddr = null; if (_validateResponse != null && !_validateResponse(response)) { throw new WebException(ValidateResponseFailure, null, WebExceptionStatus.UnknownError, response); } return(response); }
private ResponseModel GetHtml(string url, string refurl = null, System.Net.CookieContainer cookieContainer = null, string _contentType = "", NameValueCollection headers = null, int retType = 1) { if (cookieContainer == null) { cookieContainer = this.cc; } ResponseModel model = new ResponseModel(); ServicePointManager.Expect100Continue = true; ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult); HttpWebRequest request = null; HttpWebResponse response = null; try { request = (HttpWebRequest)WebRequest.Create(url); if (this.Proxy != null) { request.Proxy = this.Proxy; } request.CookieContainer = cookieContainer; request.Timeout = timeOut; if (string.IsNullOrEmpty(_contentType)) { request.ContentType = this.contentType; } else { request.ContentType = _contentType; } if (string.IsNullOrEmpty(refurl)) { request.Referer = url; } else { request.Referer = refurl; } request.AllowAutoRedirect = AllowAutoRedirect; request.Accept = this.accept; request.UserAgent = this.userAgent; if (headers != null) { request.Headers.Add(Heads); request.Headers.Add(headers); } else { request.Headers.Add(Heads); } request.Method = "GET"; if (retType == 1) { response = (HttpWebResponse)request.GetResponse(); model.Header = response.Headers; Stream responseStream = response.GetResponseStream(); if (response.Cookies.Count > 0) { this.cc.Add(response.Cookies); } model.Stream = responseStream; return(model); } string str = string.Empty; response = (HttpWebResponse)request.GetResponse(); model.Header = response.Headers; string encoding = "utf-8"; if (!string.IsNullOrEmpty(response.CharacterSet)) { encoding = response.CharacterSet.ToLower(); } else { encoding = this.encoding.HeaderName; } if (response.ContentEncoding.ToLower().Contains("gzip")) { using (GZipStream stream = new GZipStream(response.GetResponseStream(), CompressionMode.Decompress)) { using (StreamReader reader = new StreamReader(stream, Encoding.GetEncoding(encoding))) { str = reader.ReadToEnd(); } } } else if (response.ContentEncoding.ToLower().Contains("deflate")) { using (DeflateStream stream = new DeflateStream(response.GetResponseStream(), CompressionMode.Decompress)) { using (StreamReader reader = new StreamReader(stream, Encoding.GetEncoding(encoding))) { str = reader.ReadToEnd(); } } } else { using (Stream stream = response.GetResponseStream()) { using (StreamReader reader = new StreamReader(stream, Encoding.GetEncoding(encoding))) { str = reader.ReadToEnd(); } } } if (response.Cookies.Count > 0) { cookieContainer.Add(response.Cookies); } request.Abort(); response.Close(); model.Html = str; return(model); } catch (Exception ex) { if (request != null) { request.Abort(); } if (response != null) { response.Close(); return(new ResponseModel() { Html = ex.Message, Header = response.Headers }); } return(new ResponseModel() { Html = ex.Message }); } finally { if (needReset) { AllowAutoRedirect = false; needReset = false; } } }
public static async Task SendHttpRequestAsync( string url, Dictionary <string, string> param, Dictionary <string, FileModel> files, List <Cookie> cookies, RequestMethodEnum method, int timeout_second, VoidFunc <HttpResponseMessage> handler) { var u = new Uri(url); using (var httpHandler = new HttpClientHandler() { UseCookies = false }) { //创建cookie if (ValidateHelper.IsPlumpList(cookies)) { var cookieContainer = new System.Net.CookieContainer(); cookies.ForEach(x => { cookieContainer.Add(u, x); }); httpHandler.UseCookies = true; httpHandler.CookieContainer = cookieContainer; } using (var client = new HttpClient(httpHandler)) { client.DefaultRequestHeaders.Add("UserAgent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11"); //发送X_FORWARDED_FOR头(若是用取源IP的方式,可以用这个来造假IP,对日志的记录无效) client.DefaultRequestHeaders.Add("X_FORWARDED_FOR", "101.0.0.11"); client.Timeout = TimeSpan.FromSeconds(timeout_second); HttpResponseMessage response = null; if (method == RequestMethodEnum.POST) { //使用MultipartFormDataContent请参考邮件里的记录 //拼url传参 //using (var urlContent = new FormUrlEncodedContent(param)) { } //form提交 using (var formContent = new MultipartFormDataContent()) { if (ValidateHelper.IsPlumpDict(param)) { param = param.NotNull(); foreach (var key in param.Keys) { formContent.Add(new StringContent(param[key]), key); } } if (ValidateHelper.IsPlumpDict(files)) { foreach (var key in files.Keys) { formContent.Add(CreateFileContent(files[key], key), key); } } response = await client.PostAsync(u, formContent); } } if (method == RequestMethodEnum.GET) { response = await client.GetAsync(u); } if (method == RequestMethodEnum.PUT) { throw new NotImplementedException(); //response = await client.PutAsync(u, null); } if (method == RequestMethodEnum.DELETE) { response = await client.DeleteAsync(u); } if (response == null) { throw new Exception("返回空"); } using (response) { handler.Invoke(response); } } } }
static void Main(string[] args) { if (args is null) { throw new ArgumentNullException(nameof(args)); } System.Net.CookieContainer myCookies = new System.Net.CookieContainer(); Console.Title = "Lousand Checker v1.0 By zDouwin_#7460 |"; Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine("| ____ ___ _____ "); Console.WriteLine("| | | | | | ____ __ _ | / "); Console.WriteLine("| | | | | | / / | /| | / | / "); Console.ForegroundColor = ConsoleColor.DarkMagenta; Console.WriteLine("| | | | | |____ / / | / /| | / | | "); Console.WriteLine("| | | | | | / __ / | / /| | / | / "); Console.WriteLine("|______ |____| |____| ____| / |__| / | / /|_| / |____/ "); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine("Discord | " + "https://discord.gg/f4HgAwg"); Console.WriteLine("Threads :"); int Threads = Convert.ToInt32(Console.ReadLine()); Console.Clear(); Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine("| ____ ___ _____ "); Console.WriteLine("| | | | | | ____ __ _ | / "); Console.WriteLine("| | | | | | / / | /| | / | / "); Console.ForegroundColor = ConsoleColor.DarkMagenta; Console.WriteLine("| | | | | |____ / / | / /| | / | | "); Console.WriteLine("| | | | | | / __ / | / /| | / | / "); Console.WriteLine("|______ |____| |____| ____| / |__| / | / /|_| / |____/ "); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine("Discord | " + "https://discord.gg/f4HgAwg"); Console.WriteLine("Threads:" + Threads); Console.WriteLine("Proxies type (HTTP, SOCKS4, SOCKS5) :"); string proxiesType = Console.ReadLine().ToUpper(); Console.Clear(); Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine("| ____ ___ _____ "); Console.WriteLine("| | | | | | ____ __ _ | / "); Console.WriteLine("| | | | | | / / | /| | / | / "); Console.ForegroundColor = ConsoleColor.DarkMagenta; Console.WriteLine("| | | | | |____ / / | / /| | / | | "); Console.WriteLine("| | | | | | / __ / | / /| | / | / "); Console.WriteLine("|______ |____| |____| ____| / |__| / | / /|_| / |____/ "); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine("Discord | " + "https://discord.gg/f4HgAwg"); Console.WriteLine("Threads | " + Threads); Console.WriteLine("Proxies Type | " + proxiesType); Console.Clear(); Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine("| ____ ___ _____ "); Console.WriteLine("| | | | | | ____ __ _ | / "); Console.WriteLine("| | | | | | / / | /| | / | / "); Console.ForegroundColor = ConsoleColor.DarkMagenta; Console.WriteLine("| | | | | |____ / / | / /| | / | | "); Console.WriteLine("| | | | | | / __ / | / /| | / | / "); Console.WriteLine("|______ |____| |____| ____| / |__| / | / /|_| / |____/ "); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine(""); Console.WriteLine("| Discord | " + "https://discord.gg/f4HgAwg"); Console.WriteLine("| Threads | " + Threads); Console.WriteLine("| Proxies Type | " + proxiesType); Console.ForegroundColor = ConsoleColor.DarkGray; Console.WriteLine(""); Thread.Sleep(1000); Console.WriteLine("Importing accounts lines..."); Thread.Sleep(1405); Console.WriteLine("Importing proxies lines..."); Console.WriteLine(""); Thread.Sleep(2506); Console.WriteLine(""); Console.WriteLine("LOADING......"); Console.WriteLine(""); List <Task> tasklist = new List <Task>(); List <string> accounts = new List <string>(File.ReadLines("accounts.txt")); List <string> proxies = File.ReadAllLines("proxies.txt").ToList(); //Variables para las accounts int checkeds = 0; int hits = 0; int deads = 0; int Remaing = 0; Remaing = accounts.Count - checkeds; //CODIGO PARA HACER LA HROA int hrs, min, seg; for (hrs = 0; hrs < 24; hrs++) { for (min = 0; min < 60; min++) { for (seg = 0; seg < 60; seg++) { Console.Title = "PitufiChecker v1.0 By zDouwin_#7460 |" + "(" + checkeds + "/" + accounts.Count + ")" + " | Hits: " + hits + " | Deads: " + deads + " | Remaing: " + Remaing + " / " + " Elapsed: " + hrs + " : " + min + " : " + seg; Thread.Sleep(1000); Parallel.ForEach(accounts, new ParallelOptions { MaxDegreeOfParallelism = Threads }, account => { if (account.Split(':').Length == 2) { string username = account.Split(':')[0]; string password = account.Split(':')[1]; { System.Net.CookieContainer cookies = new System.Net.CookieContainer(); string postData = "password: "******"&requestUsaer: " + "true" + "&username: "******"&form=submit"; bool result = HttpMethods.Post("https://my.minecraft.net/es-es/login/", postData, "https://authserver.mojang.com/authenticate", cookies); //string mySrc = HttpMethods.Get("https://my.minecraft.net/es-es/profile/", "https://my.minecraft.net/es-es/profile/", ref myCookies); /////////////////////////////////////////////////////////////////////// // https://my.minecraft.net/es-es/profile/ // // https://my.minecraft.net/es-es/login/ // // https://api.mojang.com/user/security/challenges // // https://authserver.mojang.com/authenticate // // https://my.minecraft.net // // https://my.minecraft.net/es-es/login/?return_url=/profile // // // /////////////////////////////////////////////////////////////// string url = "https://my.minecraft.net/es-es/profile/"; HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); using (HttpWebResponse resp = (HttpWebResponse)req.GetResponse()) { cookies.Add(resp.Cookies); StreamReader streamReader = new StreamReader(resp.GetResponseStream()); StreamReader sr = streamReader; string pageSrc = sr.ReadToEnd(); //Console.WriteLine(pageSrc); string keysfa = "Fecha de registro (UTC)"; if (!result == pageSrc.Contains(keysfa)) { Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine("[SFA]" + account); Interlocked.Increment(ref hits); Interlocked.Increment(ref checkeds); Interlocked.Increment(ref Remaing); } else { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("[DEAD]" + account); Interlocked.Increment(ref deads); Interlocked.Increment(ref checkeds); Interlocked.Increment(ref Remaing); } // // Thread.Sleep(new Random().Next(600, 15500)); } } } }); } } } }
void SetCookie(string header) { string name, val; Cookie cookie = null; CookieParser parser = new CookieParser(header); while (parser.GetNextNameValue(out name, out val)) { if ((name == null || name == "") && cookie == null) { continue; } if (cookie == null) { cookie = new Cookie(name, val); continue; } name = name.ToUpper(); switch (name) { case "COMMENT": if (cookie.Comment == null) { cookie.Comment = val; } break; case "COMMENTURL": if (cookie.CommentUri == null) { cookie.CommentUri = new Uri(val); } break; case "DISCARD": cookie.Discard = true; break; case "DOMAIN": if (cookie.Domain == "") { cookie.Domain = val; } break; case "HTTPONLY": cookie.HttpOnly = true; break; case "MAX-AGE": // RFC Style Set-Cookie2 if (cookie.Expires == DateTime.MinValue) { try { cookie.Expires = cookie.TimeStamp.AddSeconds(UInt32.Parse(val)); } catch {} } break; case "EXPIRES": // Netscape Style Set-Cookie if (cookie.Expires != DateTime.MinValue) { break; } cookie.Expires = CookieParser.TryParseCookieExpires(val); break; case "PATH": cookie.Path = val; break; case "PORT": if (cookie.Port == null) { cookie.Port = val; } break; case "SECURE": cookie.Secure = true; break; case "VERSION": try { cookie.Version = (int)UInt32.Parse(val); } catch {} break; } } if (cookie == null) { return; } if (cookieCollection == null) { cookieCollection = new CookieCollection(); } if (cookie.Domain == "") { cookie.Domain = uri.Host; } cookieCollection.Add(cookie); if (cookie_container != null) { cookie_container.Add(uri, cookie); } }
public void AddCookie(string url, string key, string value) { Cookies.Add(new Uri(url), new Cookie(key, value)); }