Domanda

In relazione a questa domanda, Carica file direttamente su Amazon S3 dall'applicazione ASP.NET , c'è un modo per farlo e avere una barra di avanzamento?

---- EDIT ----

Due giorni dopo e ancora nessuna fortuna con un modo diretto. Trovato qualcosa che sembra promettente ma non gratuito: http://www.flajaxian.com/

Utilizza Flash per caricare direttamente su S3 con una barra di avanzamento.

È stato utile?

Soluzione

Sto cercando anche una soluzione. Forse questo sarà di qualche aiuto,

  

Da AWS Dev Commnity   Ma in molte lingue (PHP, Java), per   file di grandi dimensioni, è necessario utilizzare flussi   attraverso il quale l'ambiente linguistico   prenderà pezzi del tuo file di grandi dimensioni uno   dopo l'altro (per riempire   memoria centrale con un'enorme quantità di   dati necessari per il POST http di S3   per il caricamento.

     

La cosa bella di Stream è che   hanno un callback chiamato ogni volta   il prossimo pezzo viene letto per ulteriori   PUT (nel senso di https) dati a S3.   È possibile utilizzare questo callback per calcolare   e visualizza l'avanzamento sul client   UI.

     

Vedi il documento di libcurl per vedere in   spiega come funziona tutto questo.


Aggiornamento: sembra che ci siano due opzioni semplici.

  1. Flash, tramite la classe FileReference
  2. Con un'applet Java

Personalmente odio usare estensioni di terze parti (Flash, Java) per far funzionare un'app, ma non ho trovato un altro modo.

Altri suggerimenti

html5 javascript può permetterti di farlo, se non ti dispiace la mancanza di supporto del browser (Firefox e Chrome solo a partire da questo post_ Esempio qui: https://developer.mozilla.org/en/Using_files_from_web_applications

Questo non è specifico di AWS, ma può aiutarti ad avvicinarti.

Un altro approccio è quello di utilizzare qualcosa come Uber Uploader ( http://uber-uploader.sourceforge.net/ ) che è una soluzione ibrida perl / php con una barra di avanzamento. Dovresti semplicemente caricare i file sul tuo server e quindi avere il tuo server FTP in background alla destinazione finale. È un passaggio aggiuntivo ma ti dà del tempo per eseguire qualsiasi elaborazione / codifica / ecc. Che potresti dover fare prima di inviare a S3.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top