2

私は非常に短期間 (5 秒) のアクセス トークンを使用するアプリケーションを使用しており、妄想的なクライアントを使用しています。一部のユーザーは、モバイル接続を使用して S3 に保存されたファイルにアクセスしているため、遅延が非常に大きくなる可能性があります。

Amazon がすべてのリクエストでヘッダーを強制的に送信していることに気付きましたAccept-Ranges。問題のファイルに対してヘッダーを無効にしたいと考えています。そのため、チャンクをダウンロードするのではなく、最初は常にファイル全体をダウンロードします。

これについて私が気づいた主な違反者は、Chrome に組み込まれている PDF ビューアです。PDF の表示が開始され、200 の応答が返されます。次に、206 ヘッダーで再接続し、2 つのチャンクでファイルのダウンロードを開始します。Chrome が遅すぎてアクセス トークンの有効期限が切れる前にすべてのチャンクのダウンロードを開始できない場合、S3 に対してリクエストをスパム送信し続けます (ウィンドウを閉じたときに 600 以上のリクエスト)。

S3コンソールでヘッダーを変更して設定しようとしましたが、正常に保存されたと表示されている間、すぐにクリアされます。Content-Dispositionたとえば、署名付きリクエストでヘッダーを設定しようとしましたが、S3 は渡されたヘッダーを無視しました。

または、クライアントにファイル全体を一度にダウンロードさせる他の方法はありますか?

4

1 に答える 1

1

それは不可能のようです。ほとんどの場合に対処できることを期待して、トークンの有効期限を遅らせました。

しかし、クライアントが満足しない場合は、ローカルでプロキシして、気に入らないヘッダーをすべて削除します。https://coderwall.com/p/rlguogのガイドに従ってください。

于 2013-07-27T06:03:09.083 に答える