private async Task PerformPrivacyConsentRequestAsync() { if (CheckIfLoggedInAsync()) { return; } await UpdateTumblrKey(); const string referer = @"https://www.tumblr.com/privacy/consent?redirect="; var headers = new Dictionary <string, string> { { "X-tumblr-form-key", tumblrKey } }; HttpWebRequest request = webRequestFactory.CreatePostXhrReqeust("https://www.tumblr.com/svc/privacy/consent", referer, headers); const string requestBody = "{\"eu_resident\":true,\"gdpr_is_acceptable_age\":true,\"gdpr_consent_core\":true,\"gdpr_consent_first_party_ads\":true,\"gdpr_consent_third_party_ads\":true,\"gdpr_consent_search_history\":true,\"redirect_to\":\"\"}"; request.ContentType = "application/json"; await webRequestFactory.PerformPostXHRReqeustAsync(request, requestBody); using (var response = await request.GetResponseAsync() as HttpWebResponse) { cookieService.SetUriCookie(response.Cookies); } }
public async Task ConfirmPrivacyConsent() { await UpdateTumblrKey(); string referer = @"https://www.tumblr.com/privacy/consent?redirect="; var headers = new Dictionary <string, string> { { "X-tumblr-form-key", tumblrKey } }; HttpWebRequest request = webRequestFactory.CreatePostXhrReqeust("https://www.tumblr.com/svc/privacy/consent", referer, headers); request.ContentType = "application/json"; string requestBody = "{\"eu_resident\":true,\"gdpr_is_acceptable_age\":true,\"gdpr_consent_core\":true,\"gdpr_consent_first_party_ads\":true,\"gdpr_consent_third_party_ads\":true,\"gdpr_consent_search_history\":true,\"redirect_to\":\"\"}"; using (Stream postStream = await request.GetRequestStreamAsync()) { byte[] postBytes = Encoding.ASCII.GetBytes(requestBody); await postStream.WriteAsync(postBytes, 0, postBytes.Length); await postStream.FlushAsync(); } using (var response = await request.GetResponseAsync() as HttpWebResponse) { cookieService.SetUriCookie(response.Cookies); } }
private async Task Register(string login, string password) { string url = "https://www.tumblr.com/svc/account/register"; string referer = "https://www.tumblr.com/login"; var headers = new Dictionary <string, string>(); HttpWebRequest request = webRequestFactory.CreatePostXhrReqeust(url, referer, headers); cookieService.GetUriCookie(request.CookieContainer, new Uri("https://www.tumblr.com/")); var parameters = new Dictionary <string, string> { { "determine_email", login }, { "user[email]", "" }, { "user[password]", "" }, { "tumblelog[name]", "" }, { "user[age]", "" }, { "context", "no_referer" }, { "version", "STANDARD" }, { "follow", "" }, { "form_key", tumblrKey }, { "seen_suggestion", "0" }, { "used_suggestion", "0" }, { "used_auto_suggestion", "0" }, { "about_tumblr_slide", "" }, { "tracking_url", "/login" }, { "tracking_version", "modal" }, { "random_username_suggestions", "[\"KawaiiBouquetStranger\",\"KeenTravelerFury\",\"RainyMakerTastemaker\",\"SuperbEnthusiastCollective\",\"TeenageYouthFestival\"]" }, { "action", "signup_determine" }, }; await webRequestFactory.PerformPostReqeust(request, parameters); using (var response = await request.GetResponseAsync().TimeoutAfter(shellService.Settings.TimeOut) as HttpWebResponse) { cookieService.SetUriCookie(response.Cookies); } }
private async Task Register(string login, string password) { string url = "https://www.tumblr.com/svc/account/register"; string referer = "https://www.tumblr.com/login"; var headers = new Dictionary <string, string>(); HttpWebRequest request = webRequestFactory.CreatePostXhrReqeust(url, referer, headers); request.AllowAutoRedirect = true; cookieService.GetUriCookie(request.CookieContainer, new Uri("https://www.tumblr.com/")); var parameters = new Dictionary <string, string> { { "determine_email", login }, { "user[email]", "" }, { "user[password]", "" }, { "tumblelog[name]", "" }, { "user[age]", "" }, { "context", "no_referer" }, { "version", "STANDARD" }, { "follow", "" }, { "form_key", tumblrKey }, { "seen_suggestion", "0" }, { "used_suggestion", "0" }, { "used_auto_suggestion", "0" }, { "about_tumblr_slide", "" }, { "tracking_url", "/login" }, { "tracking_version", "modal" }, { "random_username_suggestions", "[\"KawaiiBouquetStranger\",\"KeenTravelerFury\",\"RainyMakerTastemaker\",\"SuperbEnthusiastCollective\",\"TeenageYouthFestival\"]" }, { "action", "signup_determine" }, }; string requestBody = webRequestFactory.UrlEncode(parameters); using (Stream postStream = await request.GetRequestStreamAsync()) { byte[] postBytes = Encoding.ASCII.GetBytes(requestBody); await postStream.WriteAsync(postBytes, 0, postBytes.Length); await postStream.FlushAsync(); } using (var response = await request.GetResponseAsync() as HttpWebResponse) { cookieService.SetUriCookie(response.Cookies); } }