2023-01-02
https://twitter.com/nwtgck_ja/status/1609213963564380171
Service Worker を使ってダウンロードするコンテンツを動的に決定するのはこの技術を利用している。
目的は、Safari のダウンロードが他のブラウザ挙動が異なりそれを安定させること。動的なコンテンツをダウンロードを安定させるには、a タグをユーザーが本当にクリックしたことを起点にするのが一番だという結論になった。
Blob にするのを避けるのは巨大なファイルも想定しているから。
さらに詳しくわかってきた。download 属性を付けると Desktop Safari 16.1 は Service Worker を経由しないが、iOS Safari 16.1 は経由する。
知見だ。