特定のページで外部の https 以外の URL からの画像を表示する必要がある安全なサイトがあります。画像データをページに渡すためのプロキシとしてのみ使用されるサーブレットを作成したいと考えています。1 つの方法は、Apache の HttpClient を使用して画像データをダウンロードし、IOUtils.copy を使用してデータをサーブレットの応答にコピーすることです。
もっと簡単な方法はありますか?
更新: これは、ブラウザーの警告を回避するためです。
特定のページで外部の https 以外の URL からの画像を表示する必要がある安全なサイトがあります。画像データをページに渡すためのプロキシとしてのみ使用されるサーブレットを作成したいと考えています。1 つの方法は、Apache の HttpClient を使用して画像データをダウンロードし、IOUtils.copy を使用してデータをサーブレットの応答にコピーすることです。
もっと簡単な方法はありますか?
更新: これは、ブラウザーの警告を回避するためです。
これは私が最終的に使用したものです:
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
try {
String url = request.getParameter("url");
HttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(url);
HttpResponse httpResponse = httpClient.execute(httpGet);
HttpEntity httpEntity = httpResponse.getEntity();
InputStream inputStream = httpEntity.getContent();
response.setContentType("image/jpeg");
IOUtils.copy(inputStream, response.getOutputStream());
} catch (Exception e) {
AppLogger.log(e);
}
}
誰かがこれを達成するためのより良い方法を持っている場合は、投稿してください。
私がよく理解している場合、そのようなものは必要ありません.HTML応答で画像や音声、またはその他への参照を返すだけで、ブラウザは各リソースを含むサーバーへのリクエストを処理します.到達可能な場合は、クライアントに表示されます。