Entwickler-Ecke

Internet / Netzwerk - Beitrag im PHPBB3-Forum via HTTP-Request


JustusJonas - Mo 28.07.08 02:29
Titel: Beitrag im PHPBB3-Forum via HTTP-Request
Hallo Leute,

bisher habe ich immer eine TWebBrowser-Komponente benutzt um Vorgänge im Internet fernzusteuern. Heute bin ich zum ersten mal darauf aufmerksam geworden, dass das ja auch "schöner" mit einem HTTP-Request funktioniert.

Ich würde - ganz konkret - gerne automatisch einen Beitrag in einem PHPBB3-Forum erstellen mit Hilfe eines HTTP-Requests.

Was genau gesendet wird habe ich mit Hilfe von "Live HTTP Headers" schon herausgefunden. Es sind jedoch auch dynamische Informationen enthalten, wie z. B. eine SID des Users usw.

Leider konnte ich kein richtige Tutorial im Internet finden und habe deshalb nicht wirklich eine Ahnung, wie ich vorgehen soll oder muss.

Kann mir jemand helfen?

Greetz


Christian S. - Mi 30.07.08 00:04

Hallo!

Dieser Thread war ein paar Tage wegen Rückfragen unserer seits geschlossen und ist nun wieder geöffnet. Bitte diskutiert unter der Annahme, dass (a) ein bereits vorhanderer Account verwendet wird und (b) keinerlei Captchas oder ähnliches umgangen werden.

Ich möchte ausdrücklich betonen, dass JustusJonas in keiner Weise Grund zu der Annahme gab, etwas "unschönes" tun zu wollen, aber wir wollten uns absichern. :-)

Viele Grüße
Christian


BenBE - Mi 30.07.08 13:29

Grob die Schritte zum Posten:
1. Anmeldung am Forum über login.php
--> Als Cookie kommt eine gültige, authentifizierte Session-ID zurück (ggf. als String auch bei jeglichen Links des Forums (?labla).
--> Username und Passwort als POST-Parameter in der ursprünglichen Abfrage mitschicken; die Feldnamen dazu kannst Du einmal aus dem Quelltext einer normalen login.php (beim Ansurfen im Browser --> Seitenquelltext anzeigen) gewinnen.

- Aufruf der Posting.php
--> Diese brauch besagte Session-ID (als Cookie ODER GET-Param)
--> Die Foren-ID (ID des Forums, in dass gepostet werden soll)
--> Den Post-Text
--> Mode reply oder newtopic (je nach dem, was Du tun möchtest)
--> Bei reply muss zusätzlich die Topic-ID (t) als GET oder POST übergeben werden.
--> Die ID des Submit-Buttons nicht vergessen mitzusenden.

Die Übergabe dieser Parameter lassen sich bei IdHTTP vor der Ausführung der Abfrage konfigurieren. Da ich mit denen aber selten arbeite, kann ich da derzeit nichts genaueres zu sagen ... Schau da mal halt kurz in die Doku zu den Komponenten.


JustusJonas - Mi 30.07.08 22:31

Dankeschön erst mal für deine Antwort.

Ich glaube der Cookie, bzw. die Session-ID ist der Knackpunkt. Wie komme ich an den Cookie bzw. die Session-ID ran? In der URL steht sie jedenfalls leider nicht. :(

Greetz


BenBE - Do 31.07.08 09:08

Bei den Indys kannst Du bei der Antwort die Header abfragen, dort sollten auch die Cookies zu finden sein.