Fileserver erstellen (Sockets)
-
moin
weiß einer wie man einen Fileserver implementiert? Mittlerweile hab ich bereits einen Server und einen Client, die auch miteinander kommunizieren können. Doch mein Lösungsansatz ist bisher:
- Der Client übergibt dem Server den Dateipfad
- Der Server öffnet die Datei und speichert sie in eine FILE*
- anschließend wird ein großer String erstellt und in einer Schleife wird der
Dateiinhalt in den String gespeichert und daraufhin an den Client gesendet.Ich glaube nicht, das das der rictige Weg ist. Doch einfach einen Filediskriptor an den Client zu schicken geht auch nicht, weil es ja zwei verschiedene Rechner sind und der Client auf die Datei keinen Zugriff hat...? Ich brauche eine Möglichkeit die Datei als ganzes an den Client zu schicken.
Kennt jemand eine brauchbare Lösung?
-
sharp schrieb:
Ich glaube nicht, das das der rictige Weg ist.
aber fast. du liest die datei häppchenweise in ein array (z.b. immer 1024 bytes oder so) und schickst die daten dann rüber. das machste so lange, bis die datei komplett ausgelesen wurde. dann macht der server die verbindung zu, was dem client signalisiert, dass alles gesendet wurde.
^^nur als vorschlag. man kann sowas auf viel verschiedene arten machen.
-
werd ich gleich versuchen..
thx