2

特定のページで外部の https 以外の URL からの画像を表示する必要がある安全なサイトがあります。画像データをページに渡すためのプロキシとしてのみ使用されるサーブレットを作成したいと考えています。1 つの方法は、Apache の HttpClient を使用して画像データをダウンロードし、IOUtils.copy を使用してデータをサーブレットの応答にコピーすることです。

もっと簡単な方法はありますか?

更新: これは、ブラウザーの警告を回避するためです。

4

2 に答える 2

0

これは私が最終的に使用したものです:

    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);
        }
    }

誰かがこれを達成するためのより良い方法を持っている場合は、投稿してください。

于 2012-06-04T03:07:14.567 に答える
-1

私がよく理解している場合、そのようなものは必要ありません.HTML応答で画像や音声、またはその他への参照を返すだけで、ブラウザは各リソースを含むサーバーへのリクエストを処理します.到達可能な場合は、クライアントに表示されます。

于 2012-06-03T00:36:51.733 に答える