Hex wert als gif an Webbrowser schicken

Gast #818262
Lesenswert?

Hallo zusammen,

ich hab da mal ne allgemeine Frage, zu der ich die Antwort hier schon 
irgendwo gelesen habe, aber sie wirklich nciht mehr finde, zum Thema 
Gif-Bild.
Wenn mir (ich bin in diesem Fall ein Webserver) der Browser eine Anfrage 
auf ein Gif Bild schickt z.B. "GET /smile.gif..." und ich ihm in etwa 
eine solche Antwort:
1
HTTP/1.0 200 Document follows
2
Server: ich
3
Content-Type: image/gif
4
0x00 0x0f ...
schicken würde, wobei die Hexwerte aus der Umsetzung aus einem normalen 
Gif-Bildes stammen, würde mich dann der Browser verstehen und mein Bild 
darstellen können?
Wenn nicht, was muss ich anders machen?
Moderator Persönliche Seite #818297
Lesenswert?

Sepp wrote:

> Wenn nicht, was muss ich anders machen?

Nun, erstens könntest du mit dem Studium der einschlägigen RFCs
für HTTP beginnen.  Die sind sowas wie ein Gesetz, daher solltest
du sie befolgen.

Darin wirst du z. B. erfahren, dass zwischen den Headern und dem
eigentlichen Dokument eine Leerzeile (mit \r\n, nicht nur \n)
sein muss.  Auch wirst du darin erfahren, welche Header Pflicht
sind und welche nicht.

HTTP-Dokumente werden normalerweise uncodiert versendet, d. h.
rein binär.  Dementsprechend müsste dein GIF-File dann auch binär
dort kommen, nicht in irgendeiner hexadezimalen Darstellung.

p.s.: Hat nichts mit GCC zu tun, daher habe ich es verschoben.
Gast #825888
Lesenswert?

1
[...]HTTP-Dokumente werden normalerweise uncodiert versendet, d. h.
2
rein binär.  Dementsprechend müsste dein GIF-File dann auch binär
3
dort kommen, nicht in irgendeiner hexadezimalen Darstellung.[...]

Also könnte das schon funktionieren. Ich hab schon an ein paar Ecken 
gesehen, dass die Leute ihre Gif Bilder in Hexwerte umcodieren um dann 
"einfach" rausschicken. Mir ist nur noch nicht ganz klar, wer die 
Hexwerte richtig interpretieren muss. Entweder macht das der Browser, 
oder das  µC Prog an sich wandelt die Hexwerte in Chars und der Browser 
wandelt diese dann wieder in ein Bild. Bin mir aber sowas von garnicht 
sicher und die RFC zu HTTP hat mir da auch nicht wirklich geholfen. 
Steht da sowas wirklich drin? Wenn ja, dann hab ich da ein paarmal 
vorbeigelesen :)
#825916
Lesenswert?

Ist mir nicht bekannt, dass man Binärdaten einfach als Hex verschicken 
könnte. Wenn du Glück hast findest du einen Browser, der Base64 
unterstützt. Meines Wissens nach ist das als Kodierung in HTTP erlaubt 
(bei entsprechender Kennzeichnung im Header).

Ich verstehe nur nicht genz, was das für einen Nutzen hat. Normaler 
Weise ist's einfacher den ganzen Kram binär auszugeben.

Um HTTP zu lernen ist's am einfachsten, wenn man einfach mal eine 
Kommunikation mitschneidet und dann in den RFCs und beim W3C 
nachschlägt, was da eigentlich passiert.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren