Freitag, Juni 5, 2020

So senden Sie ein C++ – winsock-Get-Anforderung?

Ich versuche zu schreiben, ein bittorrent-client, und ich muss arbeiten heraus, wie das senden einer HTTP-GET-Anfrage an den tracker mit einige spezifische Parameter, die hier gefunden werden kann: http://jonas.nitro.dk/bittorrent/bittorrent-rfc.html#anchor18

Ich denke, dass ich etwa verstehen, wie einen socket öffnen aber wie kann ich senden Sie eine GET-Anforderung in C++ unter windows?

Jede Hilfe wäre sehr geschätzt 🙂

  • Wenn Sie wirklich wollen, um die Ausgabe von HTTP-requests über ein socket ist wahrscheinlich zu roh. Es sei denn, Ihr tut dies als eine übung, sollten Sie versuchen, eine HTTP-Bibliothek, wie curl, die kümmern sich um alle HTTP-komplexe Dinge für Sie.
InformationsquelleAutor brnby | 2012-07-09

1 Kommentar

  1. 1

    Wenn Ihr TCP-socket geöffnet ist, müssen Sie zur Ausgabe eines HTTP GET-Anforderung.
    Dies ist eigentlich sehr einfach: Sie müssen nur senden über den socket eine Reihe von Textzeilen, wie beschrieben, zum Beispiel hier:

    http://www.jmarshall.com/easy/http/#sample

    Sie beendet Ihre Anfrage mit einer leeren Zeile.

    Dann warten, bis der server zu Antworten, und Sie Ihre Finger kreuzen…

    In deinem Fall, alle Parameter werden auf der GET-Zeile mit Parametern nachdem Sie die URL:

    GET url?param1=value1&param2=value2&param3=value3

    • Dies würde die Arbeit für alle trivial-Programm, aber wenn die OP will code ein echter bittorrent-client, wird er haben, um eine Menge von verschiedenen HTTP-return-codes, Kompression, Codierung, url-Codierung, und so weiter. Er besser, verwenden Sie eine Bibliothek, die bereits das tut gut.

Kostenlose Online-Tests