Как войти в форму HTML, используя POST-переменные в C # (.NET)? - PullRequest
2 голосов
/ 07 февраля 2009

Например, есть этот сайт: www.azet.sk

Справа есть логин и пароль. Я бы хотел, чтобы мое приложение входило в это веб-приложение и получало данные из моей учетной записи в приложении C # (.NET) и работало с ним. Цель состоит в том, чтобы поддерживать соединение «залогиненный» и отправлять переменные методом POST. Есть ли учебник или простой скрипт с примерами, чтобы узнать это?

Ответы [ 3 ]

5 голосов
/ 12 февраля 2009
string username = "your";
string password = "password";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://moje.azet.sk/prihlasenie.phtml?KDE=www.azet.sk%2Findex.phtml%3F");
using (StreamWriter writer = new StreamWriter(request.GetRequestStream(), Encoding.ASCII))
{
    writer.Write("nick=" + username + "&password=" + password);
}

HttpWebResponse response = (HttpWebResponse)request.GetResponse();
//Retrieve your cookie that id's your session
//response.Cookies

using (StreamReader reader = new StreamReader(response.GetResponseStream())
{
    Console.WriteLine(reader.ReadToEnd());
}
4 голосов
/ 07 февраля 2009

Вход в систему должен быть относительно простым.

Используйте System.Net.WebClient и метод UploadValues() для отправки данных формы. Посмотрите на источник HTML, чтобы выяснить значения полей в POST.

Большинство механизмов проверки подлинности на основе форм используют cookie-файл HTTP, чтобы держать пользователя вошедшим в систему. Итак, после того, как вы POST значения, проверьте коллекцию WebClient ResponseHeaders для заголовка 'Set-Cookie:'. 1009 *

Сохраните значение cookie для последующих запросов GET / POST на веб-сайт.

Вы, вероятно, обнаружите, что "получение данных из вашей учетной записи и работа с ней" намного сложнее (например, очистка экрана и т. Д.).

Вот ссылка, на которой есть несколько примеров:

http://codebetter.com/blogs/brendan.tompkins/archive/2005/05/18/63329.aspx

0 голосов
/ 11 февраля 2009

Посмотрите в элемент управления WebBrowser. Вы можете перемещаться в любом месте и получить программный доступ к документу и его элементам управления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...