Plupload, upload de fichiers avec jQuery
Plupload est une API javascript open-source développée en jQuery par les créateurs de TinyMCE, véritable référence en matière d'édition de texte WYSIWYG.
Le gros avantage de cette API est de permettre l'upload cross-browser de fichiers volumineux sur serveur mutualisé. En effet, Plupload est capable de faire appel à différentes technologies pour effectuer l'upload en fonction du navigateur que vous utilisez.
Par exemple, pour un navigateur récent comme Google Chrome supportant nativement le HTML5, Plupload vous propose un uploader basé sur cette technologie parfaitement fonctionnel permettant le drag-and-drop de fichiers directement dans l'uploader... Bluffant.
Dans le cas où le navigateur utilisé est moins récent ou dans le cas d'Internet Explorer là aussi Plupload sait s'adapter en proposant d'autres alternatives comme un uploader Flash, Gears, Silverlight ou encore HTML4... Sans que vous n'ayez rien à faire !
L'autre avantage de cette API est sa flexibilité avec la possibilité d'effectuer un upload multiple de fichiers via file d'attente. Une barre de progression vous indiquera l'état de chaque fichier à transférer. Ajouté à cela toute une flopée de méthodes de callback qui ont été implémentées pour vous permettre de personnaliser le comportement de Plupload à votre guise : UploadComplete, UploadProgress, QueueChanged...
Je vous entends d'ici : "Oui, c'est bien beau tout ça mais j'ai de gros fichiers à uploader moi !". Pas de problème, avec Plupload vous pouvez spécifier si vous voulez découper vos fichiers en parties moins volumineuses. Par exemple, sur un serveur mutualisé où l'upload des fichiers est généralement limité à quelques mégaoctets vous pouvez demander à Plupload de découper vos fichiers volumineux pendant l'upload en parties d'un mégaoctet. Plus de problème de limite, fini les prises de tête. N'est-ce pas beau ça ?
Ce sont pour toutes ces raisons que nous avons choisi de l'adopter dans nos développements !