PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Http Server qt



ndoehring
21-04-2006, 16:21
hallo,

als javamensch habe ich aufgrund eines projektes die würdevolle aufgabe, einen kleinen http server mit qt zu erstellen. zu meinen c++/qt-skills kann man allerdings nur folgendes sagen: nix!

deswegen direkt und unverblümt die frage: könnte mir jemand folgendes beispiel so darlegen, dass ich es auch kompiliert bekomme? --> http://doc.trolltech.com/solutions/4/qtservice/qtservice-example-server.html

ich hab versucht, es zum laufen zu bringen, indem ich genialistisches copypaste in den fortune client aus den examples betrieben hab, aber das stürzt mir dauernd ab und ich hab doch keine ahnung und erst recht keine zeit und och bitte so hilf mir doch jemand!

danke :-)

anda_skoa
22-04-2006, 20:10
So ohne Anhaltpunkt geht da nichts.

Allerdings stellt sich mir eher die Frage, aus welchen Grund man extra einen httpd erstellen sollte?

Gibt es davon nicht schon einige?

Ciao,
_

ndoehring
24-04-2006, 10:48
jaaa, hast ja recht :)

dann "verrate" ich mal den hintergrund. wir haben hier eine art VoIP tool, geschrieben in Qt, dass bestimmte funktionalität abhängig von der art der benutzerrolle anbietet. da sich diese häufig ändern, der basecode des tools aber derselbe bleibt, wollen wir das tool interface ausliefern, als eine art system service. wenn man es nutzen möchte, loggt man sich auf einer webseite ein und erhält dann ein <buzzword>ajax</buzzword> frontend (flash o.ä. als option). der xmlhttprequest wird dann an localhost gehen, und zwar auf einen port auf dem der gewollte httpd horcht. das gibt uns mehr möglichkeiten, zB kontaktlisten und textchat. im falle eines flash-frontends könnte man auch webcam-support bieten etc. der httpd soll nichts anderes tun, als die xmlhttprequests zu processen, sprich parameterübergabe ans VoIP-tool. da der coder desselbigen mehr als ausgelastet ist, darf ich jetzt in die Qt-Welt eintauchen.

darum! :-)

mir würde es ungemein weiterhelfen, wenn jemand das example "network/threadedfortuneserver" von tcp auf http modifizieren könnte. einen anhaltspunkt liefert das dokument in meinem vorigen post.

das müsste mit ein wenig copy/paste zu schaffen sein, allerdings nicht für mich :( insofern wäre ich für jeden tip dankbar.

anda_skoa
24-04-2006, 17:25
Ich kann dir da leider nicht weiterhelfen, ich benutze noch kein Qt4 (leider bisher keine Zeit dazu :()

Stell mir das allerdings ziemlich komplex vor das HTTP Protokoll zu implementieren, ein Ansatz mit einem echten httpd und lokaler Kommunikation mit dem VoIP Tool scheint mir leichter machbar.

Also zB ein PHP Skript als Webfrontend, das je nach Command dann eines oder mehrere Commandlinetools ausführt, die dann mit dem VoIP Client kommunizieren.

Ciao,
_

ndoehring
25-04-2006, 15:04
wahrscheinlich hast du recht, dann werd ich das aber auch gleich vom remote server aus machen und nach login eine tcp-socket-verbindung zum client aufbauen (tcpsocket-server ist da nämlich ohnehin am laufen drin).

schade, denn das beispiel aus angegebener url sah so einfach aus, da dachte ich, ich probier's mal.

vielen dank natürlich trotzdem! :)

anda_skoa
25-04-2006, 21:47
Das Service, bzw die Connection sollte nicht so schwer sein, aber immerhin sit HTTP nicht so trivial zu implementieren, da ist es besser man benutzt etwas das das schon erledigt.

Wenn ihr sonst eher viel Java einsetzt, wäre vielleicht eine JSP oder Servlet Sache leicht umsetztbar.

Man darf auch nicht vergessen, daß korrektes HTTP Handling mit all dem Escaping und so echt gründlich gemacht werden muß, weil man sonst leicht irgendwelchen mißbrauchbaren Lücken hat.

Ciao,
_