[C#] Frage zum automatischen Einloggen auf eine Webseite bzw. Anklicken eines Buttons?


hanow

Mitglied
Guten Tag, Alle

Ich bin gerade dabei eine Schnittstelle zu schreiben, mit der ich meinen Zugangsdaten an die Webseite wie (z.B. :
https://sso.sandbox-immobilienscout24.de...appName=restapi) senden und mit dem Button "Anmelden" bestätige. Das möchte ich gerne automatisiert machen.

Wie müsste ich es am Besten machen?

Bis Jetzt habe ich folgendes probiert, aber ohne Erfolg:

C#:
public static void GetResponseWeb(string requestUrl)
        {

            // Create a request using a URL that can receive a post.
            //WebRequest request = WebRequest.Create("http://www.conquerclub.com/login.php");
            WebRequest request = WebRequest.Create(requestUrl);

            request.Credentials = new NetworkCredential("myuser", "mypw");

            // Set the Method property of the request to POST.
            request.Method = "POST";

            // Create POST data and convert it to a byte array.
            string postData = "This is a test that posts this string to a Web server.";
            byte[] byteArray = Encoding.UTF8.GetBytes(postData);
            // Set the ContentType property of the WebRequest.
            request.ContentType = "application/x-www-form-urlencoded";
            // Set the ContentLength property of the WebRequest.
            request.ContentLength = byteArray.Length;

            // Get the request stream.
            Stream dataStream = request.GetRequestStream();
            // Write the data to the request stream.
            dataStream.Write(byteArray, 0, byteArray.Length);
            // Close the Stream object.
            dataStream.Close();

            // Get the response.
            WebResponse response = request.GetResponse();
            // Display the status.
            Console.WriteLine(((HttpWebResponse)response).StatusDescription);
            // Get the stream containing content returned by the server.
            dataStream = response.GetResponseStream();
            // Open the stream using a StreamReader for easy access.
            StreamReader reader = new StreamReader(dataStream);
            // Read the content.
            string responseFromServer = reader.ReadToEnd();
            // Display the content.
            Console.WriteLine(responseFromServer);
            // Clean up the streams.
            reader.Close();
            dataStream.Close();
            response.Close();

        }

Vielen Dank!

MFG!

Carvin
 

hanow

Mitglied
Danke für die Antwort!

Ja, es habe ich eigentlich schon verstanden. Aber bevor ich den Access-Token bekomme, muss ich noch einen Verifier-Code der Funktion als Parameter übergeben, wie kann ich den Verifier-Code via OAuth mit den Request-Token(via SDK generiert) bekommen?? Dafür gibt es keine Methode...

Ich bin seit einigen Tagen dabei mich mit dem SDK auseinander zu setzen...Ich wollte die Funktion AuthorizeAsync() erweitern, um zuerst über (einzuloggende) Seite [ z.B.:
https://rest.sandbox-immobilienscout24.de/restapi/security ] den Verifier-Code zu bekommen, aber davor muss die Seite eingeloggt sein...

Wenn die Seite mit meinen Zugangsdaten eingeloggt ist, dann wird die 2. Seite in dem Browser mit dem CODE geöffnet, dann könnte ich den Code in meinem Programm speichern, so denke ich...

[1] Aber wie sollte ich machen, damit die Seite zuerst automatisch eingeloggt sein?

[2] Wie mache ich es, damit der Button der 2. Seite auf welcher der Code angezeigt wird, geklickt wird?

Vielen Dank!
 

Forum-Statistiken

Themen
272.363
Beiträge
1.558.641
Mitglieder
187.836
Neuestes Mitglied
MMazi