2011-12-23 161 views
42

ユーザにPDFファイルをダウンロードさせ、ブラウザでファイルを表示できるようにしたい(ファイル名ユーザーは保存するオプションを取得するなど)。次のヘッダーは、iOS用以外どこでも、このために働くようだ:HTTP「Content-Disposition:attachment」とiOS Webブラウザでファイルをダウンロードする

Content-Disposition: attachment; filename=file.pdf 

のiOSだけで、これを無視し、画像や文書を表示します。私はダウンロードページの一部として隠れたIFRAMEでこれをやっているのを除いて、ドキュメントは見たことがないので、ダウンロードに失敗したように見えます。

これをブラウザ間で互換性のある方法で処理するには、どのような方法が最適ですか? iOSはこのヘッダーを無視しますか?私はどこの仕様や言及を見つけることができません。

リクエストヘッダーでiOSを確認し、応答を別々に処理する必要がありますか?私はこれを避けることを望んでいた。ありがとう。

P.S. iOSのWebブラウザでファイルなどをダウンロードすることに関連するその他のヒントは高く評価されます。

CLARIFICATION:これは、モバイルSafariブラウザで閲覧される通常のWebサイトに関するものです。ネイティブアプリではありません。

+0

運がいいですか?同様の問題が発生しました。 –

+0

まだ...あなたと私と少なくとも5人の人がこれを理解するのを待っています。 – dkamins

+1

ここで私はこれを解決しています:デスクトップ上では、target = iframeIdのトリック、ipad/ipod(userAgentスニッフィングで決定)を使ってフォーム/アンカーを隠しiframeに送信します。 _blankを新しいタブで開くよう強制します。 –

答えて

16

モバイルSafariブラウザは、ファイルのダウンロードをサポートしていません。

Safariで表示できる場合は、表示されます。ファイルを開くことができる他のアプリをインストールしている場合は、Safariがそのファイルを検出します。

+0

https://apple.stackexchange.com/questions/25678/downloading-and-uploading-files-through-safari-iosも参照してください。 – caw

関連する問題