2011-12-23 13 views
42

Desidero che i miei utenti siano in grado di scaricare un file PDF e farlo trattare come un file, non solo visualizzarlo (ovvero ha un nome file , l'utente ottiene l'opzione per il salvataggio, ecc.). L'intestazione seguente sembra funzionare bene ovunque tranne che per iOS:HTTP "Content-Disposition: attachment" e download di file sul browser iOS

Content-Disposition: attachment; filename=file.pdf 

iOS ignora solo questo e visualizza l'immagine o il documento. Non è un grosso problema, si potrebbe pensare, tranne che sto facendo questo in un IFRAME nascosto come parte della mia pagina di download, quindi il documento non è mai visto, e sembra che il download non è andato a buon fine.

Qual è il modo migliore per gestirlo in un modo compatibile con più browser? IOS ignora questa intestazione? Non riesco a trovare alcuna specifica o menzione di questo ovunque.

Devo controllare per iOS le intestazioni delle richieste e servire diversamente la risposta? Speravo di evitare questo. Grazie.

P.S. Sono graditi altri suggerimenti utili relativi al download di file, ecc. Nei browser Web iOS.

CHIARIMENTO: Si tratta di un normale sito Web navigato dal browser Safari mobile. Non è un'app nativa.

+0

Qualche fortuna? Ho un problema simile –

+0

Non ancora ... Tu, io e almeno altre 5 persone stiamo ancora aspettando di capirlo. – dkamins

+1

Per quello che vale, ecco come sto risolvendo questo al momento: sul desktop invio moduli/ancoraggi a un iframe nascosto usando il trucco target = iframeId, su ipad/ipod (determinato tramite userAgent sniffing) tuttavia imposto il target a _blank per forzare l'apertura in una nuova scheda. –

risposta

16

Il browser Safari mobile non supporta il download di file.

Se Safari può visualizzarlo, verrà visualizzato. Se hai installato altre app in grado di aprire il file, Safari lo rileverà automaticamente.

+0

Vedere anche https://apple.stackexchange.com/questions/25678/downloading-and-uploading-files-through-safari-ios – caw

Problemi correlati