Versuche HTTP POST Client zu bauen
-
Ich weis auch nicht genau welche Programmiersprache das ist, aber ich glaube man muss da nichts mehr kompilieren.
So wie ich das verstanden habe werden aus der bereits fertigen windows wininet.dll funktionen importiert und dann baustein kasten artig eine HTTPPOST Funktion damit gebaut.
Die HTTPGET Funktion aus diesem Code dort habe ich ja schon erfolgreich eingesetzt und die HTTPPOST Funktion funktioniert wahrscheinlich genauso irgendwie, ich verstehe im Moment wohl einfach nicht wie ich die Funktion mit Parametern richtig benutzen muss.
Bei der HTTPGET Funktion aus dem BEispiel dort ist es ja sehr einfach, dort schreibe ich einfach Parameter an die Internetadresse und in der PHP Datei kann ich die Parameter mit $_GET['Parameter'] einfach abfragen, wie das aber mit versenden einer Datei und der dort gebauten HTTPPOST Funktion funktioniert habe ich noch nicht verstanden. Ich weis weder wie die Parameter bei der HTTPPOSt Funktion richtig gesetzt werden muessen noch weis ich wie der PHP Code aussehen muss, damit das alles zusammen funktioniert.
-
CplusplusUser schrieb:
hi, weist du der code ist nicht von mir, ich habe das aus der seite zu der ich den link auch oben geschrieben habe. Und ich wuerde gerne wissen wie ich das zum laufen bringen kann. Ich bin auch kein C++ Programmierer sondern kann nur die Syntax einigermassen nachlesen.
Dann nimm wget statt sinnlos mit
C++ner komischen C++-artigen Skriptsprache die keiner kennt oder versteht rumzumachen.
Oder von mir aus eine der einfacheren Teletubby-Sprachen ala Python.
-
Das Problem ist das ich diese HTTPPOST Funktion aus der MQL Datei heraus benutzen will, weil ich ein Programm schon fertig gebaut habe mit MQL und es aber nicht schaffe die HTTPPOST Funktion richtig ein zu setzen.
-
Und aus MQL kannst du kein File auf die Platte speicher und dann wget.exe rausstarten?
BTW: zwei Programme (Client+Server) gleichzeitig debuggen, weil man net weiss wo es nun hakt, ist doof.
Guck erstmal dass der PHP Teil passt. Indem du ein fertiges Utility ala wget verwendest um den POST abzusetzen.
Und wenn das mal funktioniert, dann widme dich der Client-Seite.
-
Mit MQL kann ich Dateien auf der Platte speichern, aber was wget.exe ist muss ich erst noch nachlesen, das kenne ich noch nicht.
Eine funktionierende PHP Datei wo ein Forumular ist mit dem man eine Datei vom PC auf den Webserver speichern kann habe ich auch, aber wie das mit dieser HTTPPOST Funktion aus der MQL Datei zusammen funktionieren soll verstehe ich nicht.
-
CplusplusUser schrieb:
Mit MQL kann ich Dateien auf der Platte speichern, aber was wget.exe ist muss ich erst noch nachlesen, das kenne ich noch nicht.
wget ist ein Command Line Utility mit dem man HTTP GET, POST, ... Requests abschicken kann. Files runterladen, hochladen -- alles was man über HTTP halt so machen kann. (OK, nicht alles, aber sehr viel.)
Kommt aus der Unix Welt, gibt aber nen Port für Windows der ohne irgendwelche Cygwin-Sachen oder ähnliches auskommt und auch so problemlos funktioniert.Eine funktionierende PHP Datei wo ein Forumular ist mit dem man eine Datei vom PC auf den Webserver speichern kann habe ich auch, aber wie das mit dieser HTTPPOST Funktion aus der MQL Datei zusammen funktionieren soll verstehe ich nicht.
Wenn ich das richtig verstehe liegt das File das mit nem POST Request mitkommt schon fertig auf der Platte wenn das PHP Skript läuft. Du holst dir dann nur mehr den Pfad aus $_FILES und verschiebst es dort hin wo du es haben willst. Oder machst es halt auch und liest die Daten oder was auch immer.
Ob der POST Request dabei über ne HTML Form getriggert wurde oder direkt von einem Programm gemacht wird ist dabei egal würde ich sagen.
-
Ist es den moeglich mit dem wget programm eine php seite mit parameter auf zu rufen, beispielweise jede sekunde? Wenn ja kann jemand ein einfaches beispiel zeigen?
ich koennte beispielweise den Internetlink wo die PHP seite liegt zusammen mit den benoetigten Parametern in eine Textdatei speichern und wenn das wget programm diesen link immer aus der textdatei auslest und ein auruf zu der PHP Seite mit dem Link macht, dann wuerde das meine benoetigte Aufgabe erfuellen.
Darueber hinaus kann soweit ich das verstanden habe wget auch dateien an mein webserver senden, das waere dann auch noch nuetzlich fuer mein projekt.
-
Probier es doch einfach aus.
-
Ich habe das doch noch nie benutzt, ich wuste nicht mal das es sowas gibt, was schaetzt wie du lange ich brauche bis ich erst mal nur die betriebsanleitung durch lese und dann wie lange es dauert bis ich das zum laufen bekomme, wenn ich das ueberhaupt verstehe und wie lange dauert es wenn jemand der das kennt in 5 Minuten die Loesung sagen kann?
-
CplusplusUser schrieb:
Ich habe das doch noch nie benutzt, ich wuste nicht mal das es sowas gibt, was schaetzt wie du lange ich brauche bis ich erst mal nur die betriebsanleitung durch lese und dann wie lange es dauert bis ich das zum laufen bekomme, wenn ich das ueberhaupt verstehe und wie lange dauert es wenn jemand der das kennt in 5 Minuten die Loesung sagen kann?
Entweder du bist ein Troll oder Programmierung ist nicht wirklich dein Ding.
-
Ich freue mich ueber jeden hilfreichen Tipp, falls das mit wget nicht so kompliziert ist. Ich habe nur keine Lust paar Tage wget zu stuedieren wenn schon andere sich damit auskennen und meine Frage auf die schnelle beantworten koennen. Falls niemand Lust dazu hat ist auch kein Problem, ich hoffe man darf ja mal fragen.
-
Also ich weiss es und ich verwende wget regelmässig für sowas, aber werd es dir nicht sagen. Ernsthaft, wenn du selbst bei Dingen, die du in <5min selber rausfinden könntest hier nachfragst, dann hängst du innert kurzer Zeit am nächsten Stolperstein auf und fragst uns wieder. So geht das nicht. Solchen Leuten wird prinzipiell nicht geholfen, die sind ein Fass ohne Boden.
Einmal fragen ist ok, vielleicht ist ja jemand nett. Aber dann 3x nachfragen würd ich an deiner Stelle bleiben lassen.
-
‘--post-data=string’
‘--post-file=file’
Use POST as the method for all HTTP requests ...http://www.gnu.org/software/wget/manual/html_node/HTTP-Options.html#HTTP-Options
Würde mir trotzdem überlegen ob Fleisch- und Wurstwarenfachverkäufer nicht die vielversprechendere Berufswahl wäre.
-
@CplusplusUser
Weisst du was ein Commandline-Utility ist? Falls nicht: das ist ein "Tipp in ein DOS Fenster was ein, und dann passiert was" Ding.
Die "Betriebsanleitung" bekommst du indem du einfach nur "wget --help" eintippst. Bzw. auch hier:
http://www.gnu.org/software/wget/manual/html_node/Invoking.htmlRunterladen kannst du das Ding hier: http://gnuwin32.sourceforge.net/packages/wget.htm
Du brauchst das "Binaries" und das "Dependencies" Paket. Beide ins selbe Verzeichnis entpacken. Im "bin" Unterverzeichnis liegt dann die .exe und die benötigetn DLLs.Ein File runterladen (HTTP GET) kannst du einfach mit z.B.
wget http://www.google.com
Der Filename wird dann automatisch generiert. Wenn du den angeben willst ... naja dafür gibt's nen Switch den du mitgeben kannst. Findest du alles in der Doku.
-
was ein Commandline-Utility ist wuste ich noch nicht, aber ich habe im laufe der letzten jahre schon manchmal sowas gesehen.
ich werde dann im laufe der tage versuchen mit wget das zu testen, weil viele ja jetzt schon gesagt haben das es moeglich ist.
bevor ich gefragt habe, habe ich natuerlich auch selber versucht das zu verstehen, aber man findet immer erst lauter nebeninformationen bevor man die eigentlich gesuchte info findet, das ist nicht fuer jeden so leicht heraus zu finden.
ich mache das natuerlich auch nicht berufmaessig wie man an meinen fragen erkennen kann.
-
Wuerde jemand empfehlen statt wget das programm http://curl.haxx.se/ zu benutzen? Weil damit kann man auch Dateien hochladen, ich glaube mit wget kann man nur downloaden soweit ich das richtig verstanden habe oder?
Kann man eigentlich bei wget das so einstellen das automatisch jede Sekunde bis zu 50 Dateien hoch geladen werden oder jede Sekunde ein HTTPGet Aufruf gemacht wird, oder ist das ueberbelastung?
-
wget kann nur runterladen
-
Danke fuer die Info. Dann nehme ich besser curl weil ich auch uploads machen will.
-
EOP schrieb:
wget kann nur runterladen
WTF?
Was soll der Mist?
Natürlich kann wget auch hochladen.
Die Switches dafür hast du selbst noch gepostet.