Comment puis-je obtenir des téléchargements de fichiers Gmail pour mon application Web?

Je souhaite ajouter des fonctionnalités de téléchargement de fichiers Gmail pour l'un de mes projets. Quelqu'un peut-il m'aider avec ça?

Mon application est construite dans vb.net.

J'apprécierais tout type d'aide ou d'orientation.

Merci

Découvrez SWFUpload , qui est essentiellement un javascript api pour les capacités de gestion de téléchargement de fichiers absolument supérieures de Flash. La meilleure chose là-bas jusqu'à ce que les navigateurs se rattrapent finalement.

Du lien:

  • Télécharger plusieurs fichiers à la fois par ctrl / shift-select dans la boîte de dialogue
  • Rappels de Javascript sur tous les événements
  • Obtenir des informations sur les fichiers avant le démarrage du chargement
  • Élément de chargement de style avec XHTML et css
  • Affichez l'information pendant que les fichiers téléchargent en utilisant HTML
  • Aucune page recharge nécessaire
  • Fonctionne sur toutes les plates-formes / navigateurs dotés d'un support Flash.
  • Détruit gracieusement vers le formulaire de téléchargement HTML normal si Flash ou javascript n'est pas disponible
  • Contrôle de la taille des fichiers avant le démarrage du chargement
  • Afficher uniquement les types de fichiers choisis dans le dialogue
  • Queue télécharge, supprime / ajoute des fichiers avant de lancer le chargement

Demos

—– iframe upload —–

Pour commencer, vous souhaitez avoir un iframe sur votre page. Ceci est destiné à la communication du serveur. Vous le cacherez plus tard, mais pour l'instant, gardez-le visible. Donnez à iframe un attribut de nom, comme "uploader" ou quelque chose.

Maintenant, dans votre forme, définissez la cible sur le nom de l'iframe et l'action sur un script que vous avez sur le serveur qui acceptera un chargement de fichier (comme un formulaire normalisé avec un chargement de fichier). Ajoutez un lien dans ce formulaire avec le texte "Ajouter un fichier". Définissez ce lien pour exécuter une fonction javascript qui ajoutera une nouvelle entrée au formulaire. Cela peut se faire via le DOM, mais je recommanderais une bibliothèque javascript comme jquery .

Une fois que la nouvelle entrée du fichier est ajoutée au formulaire, définissez l'événement flou de cette entrée dans une fonction javascript qui soumettra le formulaire, puis vérifiez périodiquement sa sortie. La lecture d'un iframe peut être délicate, mais c'est possible.

Demandez à votre fichier de télécharger un fichier "Terminé". Ou un nom de fichier ou quelque chose lorsque le téléchargement est terminé.

Vérifiez chaque seconde environ jusqu'à ce qu'il y ait du contenu. Une fois que vous avez contenu, tuez votre minuteur et remplacez l'entrée du fichier par le nom du fichier (ou "Fichier téléchargé") ou quoi que ce soit.

Cachez votre iframe avec css.

De YUI! (Interface utilisateur Yahoo), http://developer.yahoo.com/yui/uploader/

  1. Sélection de fichiers multiples dans une seule boîte de dialogue "Ouvrir le fichier".
  2. Filtres d'extension de fichier pour faciliter la sélection de l'utilisateur.
  3. Suivi des progrès pour les téléchargements de fichiers.
  4. Une gamme de métadonnées de fichiers: nom de fichier, taille, date de création, date de modification et auteur.
  5. Un ensemble d'événements diffusés sur divers aspects du processus de téléchargement de fichiers: sélection de fichiers, progression de téléchargement, fin de chargement, etc.
  6. Inclusion de données supplémentaires dans la demande POST de téléchargement de fichiers.
  7. Un chargement plus rapide des fichiers sur les connexions à large bande en raison de la taille du tampon SEND modifié.
  8. Réponse du serveur de la même page à la fin du téléchargement du fichier.

Totalement gratuit

Voici le clone du chargeur de Gmail . C'est le clone exact du chargeur de Gmail avec des installations supplémentaires. Vous pouvez voir les vignettes des images après avoir téléchargé, Faites glisser les miniatures pour modifier l'ordre et remplacer toute vignette. Il est fait en utilisant jQuery . Vous pouvez voir la démonstration ici . Le code source est gratuit pour téléchargement dans un seul fichier zip .

J'espère que vous pouvez facilement supprimer un code et obtenir la chose souhaitée. Vous pouvez laisser des commentaires sur le blog ABCoder si vous avez besoin d'aide supplémentaire.

Pour une solution non flash, vous pouvez utiliser NeatUpload . Je l'ai utilisé sur un projet étendu l'année dernière avec une exigence sans flash. Il est très facile d'intégrer dans les solutions existantes. Je pensais que c'était une brise avec laquelle travailler. Plus facile, dans mon expérience limitée, que de travailler avec SWFUpload dans ASP.NET. Probablement parce que NeatUpload est construit juste pour ASP.NET.

Vous pouvez utiliser Flickr Uploader clone à la place.

Parlez-vous d'un téléchargement sans un retour de page complet? Jetez un oeil à http://www.phpletter.com/Demo/AjaxFileUpload-Demo/ , qui crée un iframe caché, copie le contrôle d'entrée et utilise l'iframe pour effectuer la publication pour obtenir le fichier sur le serveur.

Si vous cherchez le comportement où lorsque l'utilisateur clique sur "attacher un fichier" et la boîte de dialogue de navigation de fichier apparaît automatiquement, cela peut se faire via Javascript mais ne fonctionne pas dans FireFox, ce qui a la précaution de sécurité requise pour que l'utilisateur Invoquez le bouton "Parcourir" directement (plutôt que par programmation par script).

Pour le téléchargement "automatique", utilisez Javascript pour joindre à l'événement "changement" pour la propriété "valeur" de la commande 'entrée' afin que l'exécution soit effectuée lorsqu'un fichier a été sélectionné.

Maintenant, il a été de 2 ans, j'ai utilisé le téléchargement dans mon système hérité et ça marche bien. Mais vous devez écrire un code de piratage (tel que tenir la session).

Je vous recommande d'utiliser jquery upload , qui est un HTML pur, pas de swf, pas de problèmes de session et vraiment génial!

== en 2013, ce que j'ai écrit:

Je envisage de choisir, SWFupload ou de télécharger .

Mais sur le site officiel de SWFupload, il dit qu'il n'a pas fonctionné et que l'auteur espère qu'un jour SWFupload pourrait relancer …

Donc … J'ai décidé d'essayer "uploadify", ce qui semble supporter de nombreuses options, des callbacks avec beaucoup de démos. (Après avoir vérifié son code source, je suppose que l'auteur enveloppe le "SWFupload v1" et "SWFupload v2" dans son "uploadify v3" …)

Et il existe une liste complète de ce type d'uploaders .

J'aimerais avoir un peu plus de précision sur le téléchargement de fichiers "Gmail".

Voulez-vous dire comment, si cela se produit un peu, il l'attache automatiquement à un brouillon?

Le code de Gmail est difficile à trouver, mais si je devais deviner, c'est comme ça que ça marche:

  • Lorsque vous cliquez sur "attacher un autre fichier", il insère un contrôle de fichier de type de saisie régulier. Sur IE, il peut également déclencher par programmation l'événement de clic sur le bouton "Parcourir" afin que la boîte de dialogue de fichier s'ouvre immédiatement (cela ne fonctionne pas sur Firefox, et je n'ai pas IE à portée de main, mais je crois que IE le permet)
  • Après avoir sélectionné un fichier, il détecte l'événement de modification du contrôle d'entrée et démarre une minuterie.
  • Lorsque la minuterie déclenche, elle détache l'élément d'entrée du formulaire et l'ajoute à une forme différente dans un iframe caché, en plaçant un lien simple dans la forme principale (visible). L'iframe caché est ensuite soumis pour télécharger le fichier. (Il peut également cloner l'élément de saisie, mais je n'ai pas essayé de savoir si cela fonctionne.)

Vous pouvez utiliser iFrames pour cela