ダウンロードとは
ダウンロード(download)は、ネットワークの向こう側にあるデータを、自分の端末へ受け取ることです。資料を保存する、アプリを取得する、メールの添付ファイルを端末へ保存する、といった操作が当てはまります。
アップロードと同じく、「下へ」は物理的な高さではありません。サービス側にあるデータを、利用者の手元にある端末へ受け取る方向を表します。
サービス側資料.pdf要求されたデータを送る
手元の端末保存・表示保存先と完了状態を確認
Webページを開くことも、データ受信を含んでいる
ブラウザでWebページを開くときも、HTML、CSS、JavaScript、画像などをサーバーから受け取っています。ただし日常の操作では、ブラウザ内で表示する取得と、「ダウンロード」ボタンでファイルとして保存する操作を分けて呼ぶことが多くあります。
受け取ったデータがどこへ置かれるかは、応答内容、リンクの指定、ブラウザの設定、利用者の操作で変わります。画面に表示される場合、一時的なキャッシュへ置かれる場合、ダウンロードフォルダーなどへ保存される場合があります。
表示ブラウザ内で開くHTMLや画像、PDFなど
一時保存キャッシュに置く再表示を助ける内部データ
ファイル保存指定場所へ残す後で開ける保存物
開始から完了までに起きること
- 1データを要求する
リンク、保存ボタン、アプリの操作などから、必要な資源のURLを指定します。
- 2サーバーが応答する
データの種類や大きさなどを示しながら、内容を複数のパケットに分けて送ります。
- 3端末が受信して書き込む
途中まで受け取った一時ファイルを使い、進捗を表示するアプリもあります。
- 4完了を確認する
通信エラーや容量不足がなければ保存を完了し、ファイルを開ける状態にします。
ダウンロードとストリーミングの違い
ダウンロード保存は、受け取ったデータを端末へ残し、あとで使える状態にすることを中心にした操作です。ストリーミングは、動画や音声を小さな単位で受け取りながら順次再生する利用方法です。
ストリーミングも通信としてはデータを受信しますが、すべてを一つの利用者向けファイルとして保存してから再生するとは限りません。「オフライン保存」と表示される機能も、通常のファイルとして自由に扱えるとは限らず、アプリ内だけで再生できる場合があります。
保存後に気を付けること
ファイル名の末尾にある拡張子や表示アイコンだけで、安全性を断定することはできません。入手元、表示されたファイル形式、電子署名やハッシュ値が案内されている場合はその一致を確認します。不要な実行ファイルを安易に開かないことも重要です。
通信が切れたときに続きから再開できるかは、サーバーとアプリの対応によります。進捗が止まった場合は、保存先の空き容量、接続状態、サービス側の制限を分けて確認します。
仕様の確認資料:RFC 9110「HTTP Semantics」、RFC 959「File Transfer Protocol」