CodeIgniter レスト コントローラーを使用しています。クライアントからの GET リクエストで画像を提供できるようにしたいと考えています。
これが最善の選択肢ですか、それとも画像へのリンクを提供してクライアントにダウンロードさせるべきですか? 画像自体を提供できる場合は、どうすればよいですか?
CodeIgniter レスト コントローラーを使用しています。クライアントからの GET リクエストで画像を提供できるようにしたいと考えています。
これが最善の選択肢ですか、それとも画像へのリンクを提供してクライアントにダウンロードさせるべきですか? 画像自体を提供できる場合は、どうすればよいですか?
CodeIgniterに適切なヘッダーなどを設定させるには、コントローラーでこれを行うことができます。
$this->output->set_content_type('jpeg')->set_output(file_get_contents('path_to_file'));
そして、画像コンテンツをファイルとして(要求応答として)出力します。ビューは必要ありません。
ただし、ファイルはWebサーバー(Apache / Nginx)だけでなくPHPによって処理されるため、これは少し余分なオーバーヘッドになることに注意してください。ロギングや承認など、リクエストにビジネスロジックが必要な場合にのみ意味があります(ただし、PHPがなくても実行できます)。画像を出力するだけの場合は、ファイルに直接リンクして、PHPを除外することをお勧めします。
画像をクライアントに表示し、画像をZipファイルとしてダウンロードするためのチェックボックスを提供できると思います。
これを見る