Originariamente inviato da cavicchiandrea
Ok, precisiamo da quanto mi risulta non è cross-browser (per mia limitazione tutto quello che non è cross-browser non lo prendo in considerazione fino a che non lo diventa)
È solo parzialmente vero. Per inviare un file (binario o no) dobbiamo eseguire almeno due operazioni:
  • leggere il contenuto di un file scelto da un utente tramite un input file e salvarlo in una variabile,
  • inviarlo tramite ajax (con metodo post meglio che get).

La prima operazione (che non riguarda ajax) non è crossbrowser (nel senso che solo IE non la supporta ma non ho mai indagato se esiste un metodo valido per leggere file con IE, ne avevamo discusso qui), la seconda sì. Ma se ad esempio sostituisci l'input file con un oggetto scritto in flash, puoi inviare dati tramite ajax. È la lettura dell'hard disk il problema.