Wie muss ich diese HTTP-Anfrage senden?

421
Markus Maring

Ich versuche, einige Informationen von einer Website ( http://www.ths-pinneberg.de/vplan/index.php?klasse=Q1c ) zu lesen . Sie benötigen ein Passwort. Ich habe das Passwort auf meinem Computer gespeichert, mein Arduino jedoch nicht. Meine Frage ist, wie die HTTP-Anfrage aussehen muss, wenn ich das Passwort in derselben Anfrage senden möchte. Meine aktuelle Anfrage sieht so aus:

GET /vplan/index.php?klasse=Q1c HTTP/1.1 Host: www.ths-pinneberg.de User-Agent: arduino-ethernet Connection: close 

Und der Server antwortet:

HTTP/1.1 200 OK Date: Fri, 18 Aug 2017 19:06:56 GMT Server: Apache X-Powered-By: PHP/5.6.30-0+deb8u1 Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Set-Cookie: PHPSESSID=e8d2772544a40ce8f333befb78d6429e; path=/ Vary: Accept-Encoding Connection: close Transfer-Encoding: chunked Content-Type: text/html; charset=UTF-8  174 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html>  <head> <title>Vertretungspl&auml;ne an der THS</title> <meta name="generator" content="Bluefish 2.2.9" > <meta http-equiv="Content-Type" content="text/html; charset=iso8859-15"> <link rel="stylesheet" type="text/css" href="default.css">  </head> <body>  20e <div id='wrap'> <div id="header"> <!-- Grafik f&#252;r den Header--> <h1>Vertretungspl&auml;ne der THS Pinneberg</h1>  </div> <p></p><div class='login'><p>Du musst das g&uuml;ltige THS-Passwort eingeben!<br>Sie m&uuml;ssen das g&uuml;ltige THS-Passwort eingeben!</p><form action='/vplan/index.php' method='POST'><p>Passwort: <input type='password' name='password'><input type='submit' name='login' value='Anmelden'></p><p>&nbsp;</p><p><input type='checkbox' name='save_password'>Dauerhaft anmelden</p></form></div> 0 

Die vorletzte Zeile lautet: "Du musst das gültige THS-Passwort eingeben!" bis "Sie müssen das richtige Passwort eingeben" "Passwort" bis "Passwort" "Anmelden" bis "Login" "Dauerhaft anmelden" um "Passwort merken"

Wie muss diese Anfrage aussehen?

0
Verwenden Sie Wireshark oder Fiddler, um die Anfrage zu erfassen und anzusehen. Dann wiederholen Sie einfach die Anfrage. GiantTree vor 6 Jahren 1
Senden Sie einen `Authorization`-Header vom Typ` Basic` mit dem in base64 verschlüsselten Benutzernamen und Passwort. Weitere Informationen finden Sie unter [hier] (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Authorization). David Schwartz vor 6 Jahren 0

1 Antwort auf die Frage

1
Markus Maring

nur ein kleines Update Ich habe mein Problem gelöst (dank GiantTree). Die Lösung war, dass ich den Arduino so programmiert hatte, dass er zwei HTTP-Anforderungen sendete, weil die Basisautorisierung nicht funktionierte, da es sich nicht um eine Basisauthentifizierung handelt. Die erste Anforderung wird auf der Anmeldeseite angezeigt, um sie anzuzeigen, und die zweite Anforderung im Anmeldeformular wurde in das Verzeichnis aufgenommen, das ich sehen wollte. Hoffe das hilft anderen mit dem gleichen Problem.