Example #1
0
        private void button4_Click(object sender, EventArgs e)
        {
            var http = new HttpRequestFluent(true);

            http.OnLoad += Http_OnLoad;

            var info = http
                       .TryGetComponents(Enums.TypeComponent.InputHidden | Enums.TypeComponent.InputText)
                       .AddHeaderDynamically(false)
                       .FromUrl("https://github.com/login")
                       .Load();

            NameValueCollection parametros = new NameValueCollection();

            string token           = info.Components.InputHidden.FirstOrDefault(d => d.Name == "authenticity_token").Text;
            string timestamp       = info.Components.InputHidden.FirstOrDefault(d => d.Name == "timestamp").Text;
            string timestampSecret = info.Components.InputHidden.FirstOrDefault(d => d.Name == "timestamp_secret").Text;
            string field           = info.Components.InputTexts.FirstOrDefault(d => d.Name.Contains("required_field")).Name;

            parametros.Add("commit", "Sign in");
            parametros.Add("authenticity_token", token);
            parametros.Add("ga_id", "");
            parametros.Add("login", "SEU_EMAIL");
            parametros.Add("password", ConfigurationManager.AppSettings["senha"]);
            parametros.Add("webauthn-support", "supported");
            parametros.Add("webauthn-iuvpaa-support", "unsupported");
            parametros.Add("return_to", "");
            parametros.Add("allow_signup", "");
            parametros.Add("client_id", "");
            parametros.Add("integration", "");
            parametros.Add(field, "");
            parametros.Add("timestamp", timestamp);
            parametros.Add("timestamp_secret", timestampSecret);

            //efetuar login
            var posLogin =
                http.AddHeaderDynamically(true)
                .WithAutoRedirect(true)
                .WithParameters(parametros)
                .FromUrl("https://github.com/session")
                .Load();
        }