Logowanie na forum w C#

0

Mam problem z zalegowaniem na forum csharp.pl. W jaki sposób sprawdzić czy użytkownik zalogował się czy też nie na forum? Mój kod wygląda następująco.

 string textAnswer = null;

               string dataToSend = "username=aaaa&password=password111";//"vb_login_username=userid11&vb_login_password=password111";
                byte[] buffer = Encoding.ASCII.GetBytes(dataToSend);

                Uri uri = new Uri("http://www.csharp.pl/ucp.php?mode=login");//"http://www.thinkdigit.com/forum/login.php");
                HttpWebRequest webRequest = (HttpWebRequest)HttpWebRequest.Create(uri);
                webRequest.Method = "POST";//WebRequestMethods.Http.Post;
                webRequest.ContentLength = dataToSend.Length;
                //We use form contentType, for the dataToSend
                webRequest.ContentType = "application/x-www-form-urlencoded";
                //The length of the buffer (dataToSend) is used as contentlength.
                webRequest.ContentLength = buffer.Length;

                //We open a stream for writing the dataToSend
                Stream postData = webRequest.GetRequestStream();
                //Now we write, and afterwards, we close. Closing is always important!
                postData.Write(buffer, 0, buffer.Length);
                postData.Close();

                //Get the response handle, we have no true response yet!
                HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();
                richTextBox1.AppendText("webResponse.StatuseCode: " + webResponse.StatusCode);
                richTextBox1.AppendText("\r\nwebResponse.Server: " + webResponse.Server);

                //Now, we read the response (the string), and output it.
                Stream answer = webResponse.GetResponseStream();
                StreamReader srAnswer = new StreamReader(answer);

                textAnswer = srAnswer.ReadToEnd();
                richTextBox1.AppendText("Answer:\r\n" + textAnswer);
0

możesz wyłuskać jakąś informację z treści strony, może wystawiają jakieś ciasteczko sugerujące że jesteś zalogowany

0

Czy string dataToSend = "username=aaaa&password=password111";//"vb_login_username=userid11&vb_login_password=password111"; jest prawidłowa, tzn, czy aby podać użytkownika należy użyć typu username a dla hasła password, a może passw? Czy można to sprawdzić poprzez kod źródłowy?

0

Prawidłowo jest tak jak nazywają się pola formularza. Nie ma ogólnej zasady. Jak nazwę sobie pole ImieTwojegoMalego i powiem że tam masz wpisywać login, to tak będzie prawidłowo. Przeczytaj o formularzach html. Można sprawdzić w źródle strony znajdując odpowiednie pole formularza i sprawdzając jego atrybut name.

0

Podałe mprzykładowa stronę do testu logowania poprzez C#. Czy mógłby ktoś mi pomóc i podać jakby wyglądał kod programu, aby użytkownik mógł się zalogować na stronkę (np. podana przeze mnie stronka). Bo moj kod nie dziala, tzn treść zrodla strony jest taki sam przed jak i po logowaniu. Sprawdzilem w zrodle strony, jesli uzytkownik zle sie zaloguje to w zrodle jest info o niepoprawnym logowaniu. Rozumiem ze jest cos niepoprawnie napisanego w kodzie programu.

0

Dzieki wszystkim za pomoc, udalo sie wszystko dziala.

1 użytkowników online, w tym zalogowanych: 0, gości: 1