[WebRequest] Ausloggen nach FormClose

  • C#

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von Popa21.

    [WebRequest] Ausloggen nach FormClose

    Hallo Community!

    Kenne mich nicht grade gut mit C# aus, würde aber gerne wissen wie ich mich wieder auslogge nachdem ich die Windows Form geschlossen habe.

    Also:
    Habe ein Programm mit dem ich mich auf einer bestimmten Webseite einloggen kann. Schließe ich dann die Windows Forms Anwendung und öffne sie erneut und
    gebe diesmal falsche Daten ein, wird immer noch ausgegeben, dass ich die richtigen Daten eingeben habe. (Also wahrscheinlich noch eingeloggt bin)
    Wie kann ich verhindern, dass das passiert?
    Ich würde nach dem Logout Link suchen und diesen dann einfach aufrufen, sobald das Programm beendet wird.
    ~Programmieren Sie immer so, als wäre der Typ, der den Code pflegen muss, ein gewaltbereiter Psychopath, der weiß, wo Sie wohnen. ~

    Grüße
    Coder9292
    @nikexo So was:

    C#-Quellcode

    1. Process.Start("www.zdf.de");
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    nikexo schrieb:

    aber es lässt sich dann garnicht schließen.
    Es sieht wohl doch so aus, dass Du Dich in der Webseite direkt abmelden musst, weil Du dann ggf. in einer anderen Instanz Deiner Seite bist.
    Du schriebst ja, dass Du Dich über Dein Programm einloggst.
    Wie sieht denn der Einlog-Code aus?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Eine Frage, wie loggst du dich in die Website ein?
    Benutzt du einen WebBrowser im Form oder ein HttpRequest?
    Bei einen Webbrowser geht das so:

    C#-Quellcode

    1. ​WebBrowser.Navigate("website.com/logout");
    Bei den Maßen der Einfachheit stößt man an Grenzen, aber: "Es geht immer komplizierter".

    Popa21 schrieb:

    Eine Frage, wie loggst du dich in die Website ein?
    Benutzt du einen WebBrowser im Form oder ein HttpRequest?
    Bei einen Webbrowser geht das so:

    C#-Quellcode

    1. WebBrowser.Navigate("website.com/logout");


    WebRequest





    RodFromGermany schrieb:

    nikexo schrieb:

    aber es lässt sich dann garnicht schließen.
    Es sieht wohl doch so aus, dass Du Dich in der Webseite direkt abmelden musst, weil Du dann ggf. in einer anderen Instanz Deiner Seite bist.
    Du schriebst ja, dass Du Dich über Dein Programm einloggst.
    Wie sieht denn der Einlog-Code aus?


    C#-Quellcode

    1. private void button1_Click(object sender, EventArgs e)
    2. {
    3. if (loginfunc.Login(nameTxt.Text, passwordTxt.Text) == true)
    4. {
    5. MessageBox.Show("Eingeloggt");
    6. }
    7. else
    8. {
    9. MessageBox.Show("Falsche Daten!");
    10. }
    11. }


    C#-Quellcode

    1. public static bool Login(String Name, String Password)
    2. {
    3. string data = null;
    4. data = "username=" + Name + "&password=" + Password;
    5. try
    6. {
    7. WebRequest request = WebRequest.Create("http://example.com/");
    8. request.Method = WebRequestMethods.Http.Post;
    9. request.ContentType = "application/x-www-form-urlencoded";
    10. request.ContentLength = data.Length;
    11. StreamWriter rStream = new StreamWriter(request.GetRequestStream());
    12. rStream.Write(data);
    13. rStream.Flush();
    14. rStream.Close();
    15. WebResponse response = request.GetResponse();
    16. StreamReader resReader = new StreamReader(response.GetResponseStream());
    17. string str = resReader.ReadToEnd();
    18. if (str.Contains("Letzten News"))
    19. {
    20. return true;
    21. }
    22. else
    23. {
    24. return false;
    25. }
    26. response.Close();
    27. }
    28. catch (Exception ex)
    29. {
    30. return false;
    31. }
    32. }

    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „nikexo“ ()

    Schreib mal das unter

    C#-Quellcode

    1. string str = resReader.ReadToEnd();
    2. MessageBox.Show(str);
    .
    Poste dann den Text in der MessageBox mit richtigen Daten und falschen Daten hier.
    Bei den Maßen der Einfachheit stößt man an Grenzen, aber: "Es geht immer komplizierter".

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Popa21“ ()