Overview

Artifact ID: 258549fa841f41c73c7c69827b897f6bf3e95737
Page Name:Dev-Fichiers
Date: 2018-05-22 21:56:49
Original User: bohwaz
Mimetype:text/x-markdown
Next 223a8c84dcde08aca6fc958543b498dc1eccaabfcce684a2f31326850567be8e
Content

Les fichiers dans le code de Garradin

Stockage

Pour minimiser les ressources (espace disque, temps processeur), le contenu du fichier est stocké séparé des méta-données du fichier. Ainsi un fichier peut être uploadé plusieurs fois, à plusieurs endroits différents, et n'être stocké qu'une seule fois. De même le cache ne stocke qu'une seule fois le fichier, quel que soit le nombre d'occurrences.

Upload

L'envoi de fichier utilise l'API javascript File pour lire les données du fichier avant envoi. Cela permet de vérifier que la taille du fichier rentre dans les clous. Mais on fait aussi un appel XHR avec le SHA1 du fichier (on utilise rusha pour ça) pour savoir s'il n'est pas déjà stocké. S'il est déjà stocké ça ne sert à rien de l'envoyer et gaspiller de la bande passante ou du processeur.