Ich verwende einen einfachen Client-Code in C, um POST und GET zum Server zu machen und den Datenstrom zu lesen. Zur Zeit drucke ich die vollständige Antwort, die in recv()
empfangen wurde, und muss sie für die weitere Verwendung analysieren. Bevor ich den Datenstrom lese, möchte ich wissen, was der HTTP-Statuscode (200, 400, 401 usw.) vom Server ist. Ich bekomme dasselbe in Header. Gibt es eine Möglichkeit, HTTP-Code vor dem Lesen von Kopfzeilen zu erhalten?Wie Extrakte Parameter und Payload von Recv() in C lesen?
Was ist Best Practice, um Head-Parameter und Payload zu lesen? Ich suchte, aber die Antworten, die ich bekam, sollen '\ r \ n' Sequenz lesen und dann Logik anwenden. Gibt es einen besseren Weg?
Ich benutze Ubuntu-Systeme zum Testen dieses Codes. Es folgt Antwort gedruckt werden:
<p style="color:blue;">HTTP/1.1 401 Unauthorized
Server: Apache-Coyote/1.1
Content-Type: application/json
Content-Length: 69
Date: Mon, 08 Aug 2016 09:46:46 GMT
</p>
<p style="color:blue;">"You are not a authorized user to access this resource. Access denied."
Gibt es eine Möglichkeit, HTTP-Code vor dem Lesen von Kopfzeilen zu erhalten? "macht schon keinen Sinn. Der HTTP-Statuscode ist * in * einem Header. Unklar, was Sie fragen, oder warum Sie clientseitiges HTTP erneut implementieren, wenn bereits viele Arbeitsbibliotheken verfügbar sind. Um HTTP zu implementieren, benötigen Sie gute Kenntnisse von TCP, Sockets und RFC 2616 und seinen Nachfolgern. – EJP