Veröffentlicht 11. Juli 201312 j Hallo! Ich würde gerne auf direktem Weg mit einem HTTP Server kommunizieren. Der Server empfängt auf Port 80 "Befehle" und gibt Antworten zurück. Ich verstehe nicht so ganz, wie man direkt auf einen Server zugreifen kann. Ich möchte ihm also praktisch direkt befehle geben wie z.b. GET, POST usw. Gibt es dafür eine Möglichkeit, oder wie wird sowas normalerweise gemacht? Hintergrund: Ich benutze eine Software, die auf einen Server zugreift, um bestimmte Daten abzurufen. Ich würde das ganze gerne nachbauen und dazu muss ich sozusagen auf der gleichen Ebene, wie die Software selbst, mit dem Server "reden" können. Das ganze wird über POST und GET abgerufen.
11. Juli 201312 j Per Telnet oder über ein einfaches Python/PHP/Perl-Skript was halt einen HTTP-Request simuliert (How do you send a HEAD HTTP request in Python? - Stack Overflow)
11. Juli 201312 j Autor Telnet ist ne interessante Lösung. Ich wusste nicht, dass der Telnet Standard auch HTTP beinhaltet!? ... oder wie muss man den Zusammenhang verstehen? Jedenfalls kann ich tatsächlich über die Windows Telnet Funktion mit dem Server "sprechen".
11. Juli 201312 j Ich wusste nicht, dass der Telnet Standard auch HTTP beinhaltet!? Tut er auch nicht. Du solltest dich dringend mit den Spezifikationen von Telnet RFC 854 - Telnet Protocol Specification und am besten auch HTTP auseinandersetzen. Kurz: Der Telnet-Client macht eine TCP-Verbindung zum angegebenen Port auf und überträgt Text. Das HTTP sprichst du dann selbst mit dem Server. Unter Unix schau dir mal netcat an.
11. Juli 201312 j Hintergrund: Ich benutze eine Software, die auf einen Server zugreift, um bestimmte Daten abzurufen. Ich würde das ganze gerne nachbauen und dazu muss ich sozusagen auf der gleichen Ebene, wie die Software selbst, mit dem Server "reden" können. Das ganze wird über POST und GET abgerufen. Wenn du einfach mal nach "[deine verwendete Programmiersprache] Datei aus Internet laden" googelst, wirst du genügen Beispiele finden, wie du eine Datei anhand einer URL herunterladen (=aufrufen) kannst. GET-Parameter kannst du dann einfach anhängen. Wenn du aber mehr aus dem HTTP-Protokoll herausholen möchtest (selbst POST), solltest du eher nach einer HTTP-Klasse schauen.
11. Juli 201312 j In der Regel brauchst Du Dich um nix zu kümmern. In jeder guten Hochsprache findet sich eine Form des HTTP-Clients HttpClient Class (System.Net.Http) Apache HttpComponents - Apache HttpComponents RestTemplate httpclient | RubyGems.org | your community gem host Node.js Guide - Creating HTTP GET and POST Requests HTTP::Client - search.cpan.org 20.10. http.client ? HTTP protocol client — Python v3.1.5 documentation libcurl - the multiprotocol file transfer library
17. Juli 201312 j Schau einfach mal in ein Webserver-Log rein. Dort sind in der Regel die eingegangenen GET-Requests aufgelistet samt Parametern (um das Prinzip zu erkennen). Im Wesentlichen sind die URL sowie ein paar Betriebsdaten des Browsers angehängt. Der Server antwortet ein paar Header (z.B. Content-Type: text/html) und dahinter den HTML-Inhalt im Klartext zurück.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.