Попытка отправить имя пользователя/пароль с помощью post в C#
Я пытаюсь "войти на сайт с помощью WebRequest или WebClient, и, похоже, все идет не очень хорошо.
Одна из причин, вероятно, заключается в том, что я недостаточно хорошо понимаю логику этого.
Во всяком случае, вот код, который я в настоящее время использую, любая помощь высоко ценится.
private void button2_Click(object sender, EventArgs e) { string URLAuth = "http://www.lyndatobin-howes.com/wp-login.php"; WebClient webClient = new WebClient(); NameValueCollection formData = new NameValueCollection(); formData["log"] = "xxxx"; formData["pwd"] = "xxxx"; formData["wp-submit"] = "Log In"; formData["redirect_to"] = "http://www.lyndatobin-howes.com/wp-login.php"; formData["testcookie"] = "1"; byte[] responseBytes = webClient.UploadValues(URLAuth, "POST", formData); string resultAuthTicket = Encoding.UTF8.GetString(responseBytes); webClient.Dispose(); //string searchammount = comboBox1.SelectedItem.ToString(); WebRequest Logingrequest = WebRequest.Create("http://www.lyndatobin-howes.com/wp-login.php"); Logingrequest.Credentials = CredentialCache.DefaultCredentials; Logingrequest.ContentType = "application/x-www-form-urlencoded"; Logingrequest.Method = "POST"; WebResponse response = Logingrequest.GetResponse(); Stream dataStream = response.GetResponseStream(); // Open the stream using a StreamReader for easy access. StreamReader reader = new StreamReader(dataStream); // Read the content. string responseFromServer = reader.ReadToEnd(); richTextBox2.Text = responseFromServer; reader.Close(); dataStream.Close(); response.Close(); }
Sushil Mate
Чего вы здесь добиваетесь? не могли бы вы объяснить подробнее?
netameta
Я пытаюсь подключиться к сайту wordpress(моему собственному).
как я понимаю, я должен сделать это с помощью POST, и мне нужно каким-то образом отправить имя пользователя/пароль и какую-то другую переменную "post".
Теперь с помощью get легко я бы просто добавил к URL переменную и их значения, однако с post это немного отличается.
Я не знаю, является ли это логикой, с которой у меня возникли проблемы, или просто как написать код.
Поправьте меня, если я ошибаюсь.
в основном я предполагаю отправить запрос на URL - адрес с помощью метода post (с правильными данными- паролем имени пользователя) и правильным типом контента. учетные данные, как я понимаю, больше связаны с прокси-серверами.
после этого я должен получить ответ, и ответ должен иметь заголовки с файлом cookie "logged in" и следующей страницей после вашего входа в систему.
это примерно так и должно быть ?