プログレッシブエンハンスメントでWeb上で大きなファイルアップロードを行うベストプラクティス
-
05-10-2019 - |
質問
ユーザーが最大100MBまでの大きなファイルをアップロードできるHTMLフォームを構築しています。
私のユーザーはどこからでも来る可能性があるので、ブロードバンド接続、最新のブラウザー、またはJavaScript/Flashの可用性を期待することはできません。これらの「エキストラ」を持っているユーザーには、プロセスに関する何らかの形のフィードバックや柔軟なフォームなど、より良い体験を提供したいと思います。
私がそれを間違える可能性があると考えることができる唯一のことは、サーバーのタイムアウトです。しかし、私はこのような機能を構築したことがないので 他の人のベストプラクティスとこの分野で最も深刻な問題が何であるかを知りたい.
完全に関連性がありませんが、バックエンドはPHPにあります。
解決
バックエンドがPHPの場合、とりわけupload_max_filesizeを調べる必要があります。ほとんどの構成の問題がカバーされています ここ. 。アプリにランタイム環境のパラメーターを検証して動作させることも、フォールトトレランスを増加させるため、良いアイデアです。
フロントエンドでフラッシュを使用することは、大きなファイルで失敗する傾向があるため、お勧めしないものです。また、JavaScriptがなければ、ブラウザの組み込み機能を除いて、プロセスフィードバックはまったく不可能です。 JavaScriptなしで提供できる最良のエクスペリエンスは、ファイルアップロードフォームをiframeに配置して、アップロード中に含有ページが消えないようにすることです。
APCと軽量AJAXの組み合わせを使用した通常のシナリオの場合は、良い選択です。 IBM Webサイトには 実装ウォークスルー 件名に。