Télécharger le fichier Azure Blob Storage directement à partir du navigateur?
Est-il possible de créer un formulaire html pour permettre aux internautes de télécharger des fichiers directement à azure blob magasin sans l'aide d'un autre serveur comme un intermédiaire? S3 et GAW blobstore à la fois permettre cela, mais je ne peux pas le trouver n'importe quel support pour azure blob storage.
Vous devez vous connecter pour publier un commentaire.
Faire prendre un coup d'oeil à ces articles de blog pour télécharger des fichiers directement à partir du navigateur pour le stockage blob:
http://coderead.wordpress.com/2012/11/21/uploading-files-directly-to-blob-storage-from-the-browser/
http://gauravmantri.com/2013/02/16/uploading-large-files-in-windows-azure-blob-storage-using-shared-access-signature-html-and-javascript
La 2e poteau (écrit par moi) rend l'utilisation de HTML 5 de Fichier API, et, donc, de ne pas fonctionner dans tous les navigateurs.
L'idée de base est de créer un
Shared Access Signature (SAS)
pour un conteneur d'objets blob. Le SAS doit avoirWrite
autorisation. Depuis Windows Azure Blob Storage ne prend pas en charge De la SCRO encore (ce qui est pris en charge par Amazon S3 et Google), vous devez héberger la page HTML dans le stockage blob où vous voulez que vos utilisateurs à télécharger le fichier. Ensuite, vous pouvez utiliser du jQuery Ajax fonctionnalité.Content-Length
commentaire d'en-tête. J'ai mis à jour mon post en conséquence. Je ne crois pas que vous besoin de l'autorisation d'en-tête parce que vous utilisez la Signature d'Accès Partagé qui comprend l'autorisation nécessaire de l'information.cannot convert object to primitive value
-- des idées? (OK, je pense que peut être sur la façon dont je suis de supprimer les en-têtes... j'adore la programmation, yup yup...)Maintenant que Windows Azure storage soutien des services de la SCRO, vous pouvez le faire. Vous pouvez voir l'annonce ici: De Stockage Windows Azure de presse - présentation de la SCRO, JSON, Minutes Métriques, et Plus.
J'ai un exemple simple qui illustre ce scénario ici: http://www.contentmaster.com/azure/windows-azure-storage-cors/
L'exemple montre comment télécharger et télécharger directement à partir d'un privé blob à l'aide de jQuery.ajax. Cet exemple nécessite encore un composant de serveur pour générer la signature d'accès partagé: cela évite la nécessité d'exposer le compte de stockage de la clé dans le code client.
Il y a un Nouvelle Azure Storage JavaScript bibliothèque cliente pour les navigateurs (Extrait).
(Tout de ce post vient de l'original de l'article ci-dessus)
Exemple de Code:
Insérer le script suivant les balises dans votre code HTML. Assurez-vous que les fichiers JavaScript situé dans le même dossier.
Nous allons maintenant ajouter quelques éléments à la page pour lancer le transfert. Ajouter les balises suivantes à l'intérieur de la balise BODY. Notez que le bouton appels uploadBlobFromText méthode lorsque l'utilisateur clique dessus. Nous allons définir cette méthode dans l'étape suivante.
Jusqu'à présent, nous avons inclus la bibliothèque client et ajouté le code HTML pour afficher à l'utilisateur une saisie de texte et un bouton pour lancer le transfert. Lorsque l'utilisateur clique sur le bouton de téléchargement, uploadBlobFromText sera appelée. Définissons maintenant:
J'ai écrit un blog post avec un exemple sur la façon de le faire, le le code est sur GitHub
Il est basé sur Gaurav Mantris post et travaille en hébergeant le JavaScript sur la Goutte de Stockage lui-même.
Vous pouvez utiliser le Fichier API HTML5, AJAX et MVC 3 pour construire un solide contrôle téléchargement de fichier à télécharger de gros fichiers en toute sécurité et de manière fiable pour le stockage Windows Azure, avec une disposition de la surveillance de la progression de l'opération et l'opération d'annulation. La solution fonctionne comme ci-dessous:
Obtenir l'exemple de code ici: Fiable Téléchargements pour le Stockage Windows Azure, par le biais d'un Contrôle HTML5