Internetseite über Proxy verbinden.



  • Hallo erstmal.
    Ich hoffe der ist richtig hier.

    Ich muss eine Internetseite auslesen.
    Mir steht dabei ein Proxy im weg.
    Internetsuche dauert jetzt schon Tage an und ich versuchs mal hier.

    Ohne Proxy läüft das Programm einwandfrei.
    sock = socket( AF_INET, SOCK_STREAM, 0);....
    host_info = gethostbyname( servername);...
    server.sin_family = AF_INET;
    server.sin_port = htons( 80);
    connect( sock, (struct sockaddr*)&server, sizeof( server)) < 0) {...

    Mit :
    sprintf( buffer, "GET /%s HTTP/1.1\n\n\0", httpseite);
    count = recv( sock, buffer, sizeof(buffer), 0);
    bekomme ich das was ich will.

    So nun kommt ein Proxy ins spiel.
    Den Connect Aufruf stelle ich nun an den Proxyserver anstatt an die Internettseite direkt. Der Header sieht jetzt so aus

    strcpy(anfrage,"GET http://www.heise.de/index.html HTTP/1.1 \n");
    strcat(anfrage,"Accept: text/html, image/png, image/jpeg, image/gif, image/x-xbitmap, / \n");
    strcat(anfrage,"User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 4.0) \n");
    strcat(anfrage,"Host: www.heise.de:80 \n"); //80 wird nicht gebraucht.
    strcat(anfrage,"Proxy-Connection: Keep-Alive \n");
    strcat(anfrage,"Pragma: no-cache \r\n\r\n \0");

    count = recv( sock, anfrage, sizeof(anfrage), 0);
    Kommt nicht zurück. nach ca 20 Sekunden steht das gleiche wie vorher auf anfrage.

    Frage: Ist das Vorgehen so korrekt.
    1. mit dem Proxy connecten.
    2. über das GET die Internetseite ansprechen .

    Wo liegt der Fehler..

    Danke schonmal.



  • Bevor man in einem Forum postet guckt man sich normalerweise erstmal eine Weile an, welche Regeln in dem Forum gelten, wie man sich verhalten sollte, ...

    Hättest du das gemacht hättest du gewust, das die Antwort auf:

    Ich hoffe der ist richtig hier.

    Falsch ist.

    Das Forum schrieb:

    Hier könnt ihr Fragen rund um Standard-C++ stellen. Dazu gehören auch Fragen zur STL bzw. zur Standardbibliothek. Compiler- und betriebssystemspezifische Fragen bitte in den jeweiligen Foren posten.

    Steht doch oben drüber.

    Ebenfalls das Forum schrieb:

    Fragen zu bestimmen Funktionen und Abläufen in C++ (nach dem ISO-Standard), damit man mal erfährt, was pure virtual bedeutet, oder wie das mit den Templates und der STL geht. Bitte keine Fragen zu Windows/Linux-Programmierung hier posten!

    Steht als Beschreibung zu diesem Forum.



  • ????????????

    Das ist weder Windows/Linux-Programmierung da das Programm auf beiden Systemen läuft und überhaupt nicht Betriebssystemspezifisch ist.

    Das ist Standard C++ bzw C.

    in Entwicklungssysteme ,Sonstiges ,Betriebssysteme passt es gar nicht.
    Spezialitäten unter Webprogrammierung finde ich wohl schwer einen der C kann.
    Da ich das Problem im Moment nicht nur auf den Header beziehe, sondern es auch ein allgemeines Problem der Vorgehensweise seien kann . Somit ein Problem der Programierund möglich ist.

    Das ist ein C / C++ Programm .

    Gib mir mal nen Tipp wo das hin soll.



  • und überhaupt nicht Betriebssystemspezifisch ist.

    Win und Linux sind nicht die einzigen Systeme, für die es C++ gibt!

    Das ist Standard C++ bzw C.

    Nope.
    Keiner der beiden Standards kennen Sockets.

    Wenn's weder Win noch Linux ist hätt' ich's nach Rund um gepackt.



  • Kann jemand schieben?



  • @Helium
    hmm wie man sieht ist Tie123 ziemlich neu indem Forum (wie ich auch)
    da find ichs nicht richtig jemanden gleich so runter zu machen nur weil er was ins falsche forum gepostet hat, wobei man sich hier fast noch drüber streiten kann obs nicht zumindest doch ein wenig passt...
    naja socket und threads sind zwar kein ansi-c (weil der verdammte standard da nichts vorsieht) aber man teilt ja in verschiedene bereiche auf damit man sich nur in den foren seiner interessensgebiete aufhält. Und es wird wohl kaum jemanden geben der sagt... Ich programmiere nur in Ansi-c und schau nie über den Tellerrand...deshalb interessieren mich sockets und co nicht...
    also im wesentlich sollte die leute die sich in dem forum hier rumtreiben auch diese frage beantworten können so sie sich mit der thematik auseinandergesetzt haben...

    Will nur sagen imho so schlimm wars ja nun auch nicht das man gleich auskeksen muss wenn ein neuer mal was in ein etwas falsches forum postet...
    An sonsten wär man ja als moderator auch arbeitslos... 😉
    Naja an sonsten gefällt mir das Forum hier recht gut sind ja viele Leute mit viel Ahnung hier
    Wollte nicht gleich hier wieder Spam ins falsche forum posten aber das hat mir schon ne weile auf der zunge gebrannt, dass der Umgangston hier doch recht rau ist... wenn man sich kennt ist das ja auch ok und ich hab da auch sonst so kein problem weiter mit...aber einen newbie vergrault man mit sowas leicht so dass man bevor man den anderen rund macht vielleicht mal einen blick drauf werfen sollte wieviele posts der schon in diesem forum gemacht hat...
    Vielleicht wars ja von dir auch nicht so gemeint aber wenn man einen anderen zitiert und ihn dann immer nur kurz und trocken verbessert kommt das jedenfalls imho so rüber...

    Gruss Windalf



  • also im wesentlich sollte die leute die sich in dem forum hier rumtreiben auch diese frage beantworten können so sie sich mit der thematik auseinandergesetzt haben...

    Du willst mir also sagen, ich hab keine Ahnung? OK, kann ich akzeptieren. Ich interessiere mich trotzdem nicht für Sockets.



  • Na das war sicherlich nich böse gemeint.

    Nur eine Antwort auf die erste Frage mit einer Erläuterung warum diese so ist und wie man es selbst ghätte finden können 🤡

    Ansonsten finde ich den Hinweis auch richtig. Ich sehe in dem Beitrag keinen Hinweis darauf das C++ verwendet wird.

    Es geht ja auch darum die beste Antwort zu erhalten. Und wenn man in einem C++ Forum z.B. AnsiC Fragen beantwortet wird man sicherlich Hilfe bekommen. Aber eben nicht in dem Umfang wie es in dem Forum wäre wo sich die Leute rumtreiben die AnsiC als Kern ihres tuns ansehen.

    Ich persönlich z.B. habe schon lange kein AnsiC mehr gemacht und kann nurnoch bedingt helfen.

    Take it easy

    btw. ist es manchmal wirklich schwer einzuordnen wo man die Frage am besten postet oder wie die Suchbegriffe für sein problem sind...



  • Das Problem bei der Frage ist.

    Es ist eigentlich vom Code her mehr ein C++ Programm.
    allerdingst ohne String und Steams da ich sonst Probleme mit meinem IRIX Compiler bekomme.
    Fragen sind noch wegen Socketprogrammierung in C/C++. Daher auch dieses Forum. Dürfen hier nur Ansi Sachen besprochen werden? <winsock.h> und <sys/socket.h> gleichzeitig passt nicht in ein anderes Forum. Der Code ist nachher auch gleich und nicht Betriebssystemabhängig.

    Bleibt noch der HTTP Header der hier nun gar nicht reinpasst.
    So und nun soll man ein Forum wählen.



  • @Helium

    Du willst mir also sagen, ich hab keine Ahnung? OK, kann ich akzeptieren. Ich interessiere mich trotzdem nicht für Sockets.

    wie kommst du auf diese schlussfolgerung?
    hab ich mich so bescheuert ausgedrückt oder seit ihr in diesem forum nichts anderes gewöhnt als das ihr euch gegenseitig beschiesst?
    also davon das du keine ahnung hast hab ich nirgendwo was erwähnt und ein urteil kann ich mir nachdem ich 3 oder 4 threads von dir gelesen hab auch nur schwerlich bilden...

    ich hab auch nicht viel plan von sockets(nur ein wenig mit rumgespielt) aber ich finds nur ein wenig übertrieben wenn jemand (besonders ein neuer) was postet und der gleich rund gemacht wird wenns nicht so ganz das richtige forum ist...(was ich nur sagen wollte ist das der standard halt nicht das wahre ist, es setzt ihn ja auch kein compiler zu 100% um, und wenns schon in fast kein forum passt usw...)

    hmm jetzt fehlt mir noch ein Smile mit dem ich dich auf ein virtuelles Bier einladen kann... 😉

    Gruss Windalf



  • Es ist eigentlich vom Code her mehr ein C++ Programm.

    Ja, das stimm.

    Also, nochmal. Du kannst auch hier fragen Stellen in dem Code vorkommt, in dem es hauptsächlich um Sockets geht. Allerdings sollte die Frage C++ ansich betreffen. Deine Frage ziehlt aber nur auf Socktes ab und hat nur sehr indirekt etwas mit C++ zu tun.
    Deswegen ist die Frage hier ein wenig fehlplaziert.

    @Windalf:

    Sorry, irgendwie hab ich mich verlesen. ICh habe irgendwie nur den Teil mitbekommen:

    also im wesentlich sollte die leute die sich in dem forum hier rumtreiben auch diese frage beantworten können

    hmm jetzt fehlt mir noch ein Smile mit dem ich dich auf ein virtuelles Bier einladen kann...

    Stimmt. Müssen wir gleich mal beantragen.



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Rund um die Programmierung verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Man ist das arm, jetzt hört auf euch anzuflamen und zu streiten! Helft lieber mal dem Fragesteller oder haltet die Klappe hier. Ihr könnt ja nen extra Thema aufmachen um darüber zu diskutieren. 👎


Anmelden zum Antworten