Optimiser un upload de fichier et la lecture
Résolu/Fermé
danieljsessec
Messages postés
15
Date d'inscription
lundi 17 février 2020
Statut
Membre
Dernière intervention
25 février 2020
-
17 févr. 2020 à 15:03
danieljsessec Messages postés 15 Date d'inscription lundi 17 février 2020 Statut Membre Dernière intervention 25 février 2020 - 20 févr. 2020 à 15:20
danieljsessec Messages postés 15 Date d'inscription lundi 17 février 2020 Statut Membre Dernière intervention 25 février 2020 - 20 févr. 2020 à 15:20
A voir également:
- Optimiser un upload de fichier et la lecture
- Comment réduire la taille d'un fichier - Guide
- Fichier rar - Guide
- Comment ouvrir un fichier epub ? - Guide
- Optimiser son pc - Accueil - Utilitaires
- Forcer la suppression d'un fichier - Guide
4 réponses
cs_PaTaTe
Messages postés
2126
Date d'inscription
mercredi 21 août 2002
Statut
Contributeur
Dernière intervention
19 février 2021
496
17 févr. 2020 à 15:11
17 févr. 2020 à 15:11
Bonjour,
Sans le code, c'est dur d'aider ...
Après, je ne comprends pas ce que tu essais de faire en voulant faire un upload lu octet par octet !
Il faut nous en dire plus
Cordialement,
Sans le code, c'est dur d'aider ...
Après, je ne comprends pas ce que tu essais de faire en voulant faire un upload lu octet par octet !
Il faut nous en dire plus
Cordialement,
danieljsessec
Messages postés
15
Date d'inscription
lundi 17 février 2020
Statut
Membre
Dernière intervention
25 février 2020
17 févr. 2020 à 15:53
17 févr. 2020 à 15:53
Bonjour,
Merci pour ta réponse oui sans le code c'est dur certes mais ce n'est qu'une simple lecture avec FileReader
Je le lis octet par octet car je veux encoder mon fichier via des algorithmes de chiffrement que j'ai écrit à côté de mon programme.
De ce fait je lis octet par octet, je transforme mon octet et j'écris le nouvel octet dans un nouveau fichier, mais la partie qui ralenti le process c'est la lecture et je vois pas comment optimiser ça
Merci pour ta réponse oui sans le code c'est dur certes mais ce n'est qu'une simple lecture avec FileReader
let reader = new FileReader(); reader.readAsArrayBuffer(document.getElementById('mon_input_file').files[0]);
Je le lis octet par octet car je veux encoder mon fichier via des algorithmes de chiffrement que j'ai écrit à côté de mon programme.
De ce fait je lis octet par octet, je transforme mon octet et j'écris le nouvel octet dans un nouveau fichier, mais la partie qui ralenti le process c'est la lecture et je vois pas comment optimiser ça
cs_PaTaTe
Messages postés
2126
Date d'inscription
mercredi 21 août 2002
Statut
Contributeur
Dernière intervention
19 février 2021
496
17 févr. 2020 à 20:32
17 févr. 2020 à 20:32
Encoder un fichier peut très bien se faire côté backend car encoder un fichier côté frontend c'est risqué comme tout ce qui est traité côté front car modifiable, contournable.
Ca serait bien plus performant d'uploader le fichier en brut et de le chiffrer par PHP une fois sur le serveur.
Ca serait bien plus performant d'uploader le fichier en brut et de le chiffrer par PHP une fois sur le serveur.
danieljsessec
Messages postés
15
Date d'inscription
lundi 17 février 2020
Statut
Membre
Dernière intervention
25 février 2020
>
cs_PaTaTe
Messages postés
2126
Date d'inscription
mercredi 21 août 2002
Statut
Contributeur
Dernière intervention
19 février 2021
18 févr. 2020 à 13:55
18 févr. 2020 à 13:55
Il n'est pas question de sécurité car je ne traite pas le fichier par la suite, je ne le stock même pas
J'envoie mon fichier au js il encore et je le fait télécharger directement
Donc pas besoin de PHP
J'envoie mon fichier au js il encore et je le fait télécharger directement
Donc pas besoin de PHP
Il existe Blob.slice() dont File hérite qui permet de découper un fichier, mais JavaScript étant de nature mono-thread, je doute que vous en retiriez un quelqueconque gain de performance nativement. Je vous conseille de voir au sujet des Web Workers qui permettent le travail en parallèle. Pour des raisons de sécurité cependant, Chrome et Opera les bloquent en local via file:// ; vous devez alors utiliser un véritable serveur http, facilement montable avec Node.js. Dès lors, il s'agirait en effet de découper le fichier en parties, les identifier puis lancer un thread qui lit et transforme chaque partie dans un nouveau Worker. Rassembler ensuite les parties selon l'identifiant. Voyez en introduction : https://developer.mozilla.org/fr/docs/Web/API/Web_Workers_API/Utilisation_des_web_workers
Bon succès,
Bon succès,
danieljsessec
Messages postés
15
Date d'inscription
lundi 17 février 2020
Statut
Membre
Dernière intervention
25 février 2020
18 févr. 2020 à 17:54
18 févr. 2020 à 17:54
Merci pour votre réponse, les Web Workers semblent être ce dont j'ai besoin !
Je vais tester des codes et je mettrai le sujet en résolu avec des exemples
Pour ceux que ça pourrait intéresser j'ai trouvé ceci : https://www.html5rocks.com/en/tutorials/file/filesystem-sync/
Je vais tester des codes et je mettrai le sujet en résolu avec des exemples
Pour ceux que ça pourrait intéresser j'ai trouvé ceci : https://www.html5rocks.com/en/tutorials/file/filesystem-sync/
danieljsessec
Messages postés
15
Date d'inscription
lundi 17 février 2020
Statut
Membre
Dernière intervention
25 février 2020
20 févr. 2020 à 15:20
20 févr. 2020 à 15:20
Bonjour à tous,
Au final je n'avais pas besoin d'optimiser la lecture mais plutôt mon système d'encodage.
A+
Au final je n'avais pas besoin d'optimiser la lecture mais plutôt mon système d'encodage.
A+