JavaScript: Wie speichere ich einen FileLink in der Datenbank?

Ich glaube du vermischst hier zu sehr Server und Client.

Der Client sollte nichts mit dem Filesystem zu tun haben. Er fragt beim Server an "Welche Filme gibt es?", der Server durchsucht die Platte und antwortet "ABC, XYZ" und dann sagt der Client "ich hätte gerne Film XYZ" und der Server streamt diesen an den Client.
 
Hi,

würde ich auch sagen. Lade die Daten hoch auf den Server und fertig, wozu brauchst du irgendwo per JavaScript Zugriff aufs Dateisystem? Verstehe ich nicht.

VG,
Mad
 
ganz einfach weil es halt aktuell nur lokal läuft... ich kann ja wohl schlecht 10TB an serien und filme an nen echten webserver schicken. Es ist ein Mock.

Und genau darum will ich mir das tatäschliche kopieren sparen. weil ich eben nicht meine Festplattensammlung verdoppeln willl.

Der Server muss die daten ja auch irgendwo kriegen. der normale Flow ist nunmal dass der Client die Files ans Frontend schickt. und den Part Mocke ich eben indem ich nur einen Filesystem pointer in der DB abspeichere. Was sogar Sinn macht. Denn im Prinzip würdest du in der Realität einen Storage Account in der Cloud haben und in der DB einen link dahin speichern. Mein StorageAccount ist also mein lokales FileSystem.
 
Dann starte einen lokalen nginx o.Ä. und du hast deinen HTTP Link.
 
  • Gefällt mir
Reaktionen: Madman1209
Hi,

weil ich eben nicht meine Festplattensammlung verdoppeln willl.

brauchst du doch auch nicht. Wurde ja oben schon erklärt.

indem ich nur einen Filesystem pointer in der DB abspeichere. Was sogar Sinn macht

sehe ich anders. Wer braucht denn das Dateisystem? Es geht doch um per Netzwerk zugreifbare Pfade. Dazu musst du nichts mit dem Dateisystem anfangen.

Denn im Prinzip würdest du in der Realität einen Storage Account in der Cloud haben und in der DB einen link dahin speichern

nö, in der Realität liegen bei mir die Daten auf dem Server oder zumindest für den Webserver zugreifbar ins lokale System gemountet. Den echten Pfad sieht trotzdem niemand.

Beispiel: Kodi. Da sind bei mir auch verschiedene Serverpfade hinterlegt, in denen nach Dateien gesucht wird. Das sind aber Freigaben, die per Netzwerk zugreifbar sind. Keine Dateisystempfade.

VG,
Mad
 
Ich versteh das Problem nicht. Du programmierst einen HTTP Server den du dann lokale bei dir startest (mit Python, Node.js, C#, Java, PHP, was auch immer). Das Teil kann ja auf ner beliebigen Maschine gestartet werden, also auch auf deinem PC. Eine Fertig-Server der nur statische Dateien servt wird da nicht reichen denke ich.

Der Server sagt dem HTTP Client (z.B. Browser), was in den x lokalen Verzeichnissen vorhanden ist, denn der Server kann das alles sehen. Client präsentiert das alles dem Benutzer. Benuzter wählt aus. Client-Code sagt dem Server "bitte die Datei X im Verzeichnis Y". Server findet die Datei und streamt den Kram zum Client.

Das kannst du mit allen serverseitig laufenden (!) Programmiersprachen machen (auch JS auf Basis von Node.js), hat also mit der Programmiersprache nix zu tun. Vanilla JS läuft nicht serverseitig, sondern im Client aka Browser.

Wenn du das stattdessen als Desktopanwendung machst, sparst du dir die ganze Server-Client-Kommunikation mit HTTP natürlich, also wahrscheinlich viel einfacher. Kannste aber trotzdem als JS machen mit ELectron, hat also auch wieder nix mit der Programmiersprache zu tun.

NodeJS ist lediglich JS, was in einer anderen Umgebung läuft als im Browser und Vollzugriff aus dein System hat. Electron ist lediglich NodeJS+HTML+CSS, sodass du für den Browser geschriebenen GUI-Code wiederverwenden kannst.
 
Zuletzt bearbeitet:
Zurück
Oben