- URL: フロントエンドからファイルをダウンロードさせるやり方について
- 著者: 鈴木僚太 (@uhyo)
- 公開日: 2025-01-06
いつ読むか?
- フロントエンドからファイルダウンロード機能を実装するとき
読書メモ
推奨: ブラウザに委譲する
location.href = '/api/csv';- API側で
Content-Dispositionヘッダを設定 - 中断・再開・キャンセル等すべてブラウザ任せ
- タブを閉じてもダウンロード継続
代替: Fetch + ストリーミング
認証の都合でナビゲーションできない場合に使用。
- メモリに全データ保持が必要
- ブラウザのダウンロードUIが使えない
- 大容量ファイルでメモリ圧迫の可能性あり
結論
設計段階でナビゲーション可能なダウンロード用URLを用意することが最重要。