AJAX ファイルのダウンロード: クリック イベントとサーバー側のファイル取得の処理
AJAX リクエスト経由でファイルをダウンロードしようとすると、課題に遭遇します。問題を調べて解決策を提供しましょう。
コードには、「download.php」に GET リクエストを送信する AJAX リクエストがあります。ただし、このアプローチはファイルのダウンロードには適していません。ファイルのダウンロードを開始するには、別の戦略が必要です。
解決策:
AJAX リクエストを使用する代わりに、「window.location」を使用することをお勧めします。方法。この方法を使用すると、特定の URL に移動して、ファイルのダウンロードをトリガーできます。次のコード スニペットは、これを実現する方法を示しています。
function downloadFile() { window.location = "download.php"; }
サーバー側では、適切な HTTP ヘッダーを設定し、ファイルの内容。次のコード サンプルは、これを実装する方法の例を示しています。
header("Cache-Control: public"); header("Content-Description: File Transfer"); header("Content-Disposition: attachment; filename= file.txt"); header("Content-Transfer-Encoding: binary"); readfile("file.txt");
これらの手順に従うことで、ユーザーが Web ページ上のボタンをクリックしたときにファイルのダウンロードを正常にトリガーできます。
以上がAJAX の代わりに JavaScript を使用してファイルのダウンロードをトリガーするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。