1
サーブレットを使用してページに画像を表示しています。リンクはサーブレットによって作成された画像のブラウザタブ情報
http://webappname.com/getImage?p=imagename.jpg
のように見えます。しかし、ブラウザタブで結果の画像が、私はそこに出力のような多くの有用な情報に希望のgetImage(100x200)
を示し文字列なので、どうすればいいですか?
サーブレットを使用してページに画像を表示しています。リンクはサーブレットによって作成された画像のブラウザタブ情報
http://webappname.com/getImage?p=imagename.jpg
のように見えます。しかし、ブラウザタブで結果の画像が、私はそこに出力のような多くの有用な情報に希望のgetImage(100x200)
を示し文字列なので、どうすればいいですか?
レスポンスはイメージなので、HTMLレスポンスとして追加情報(ページタイトルなど)を含めることはできません。可能な回避策の1つは、画像が入った単純なHMTLページを返すことです。
追加のURLパラメータを使用して、通常のダウンロード(既存の動作)を開始できます。だから、例えば:
http://webappname.com/getImage?p=imagename.jpg
は、このHTMLを返します:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" src="img-dl-style.css">
<script type="application/javascript">
// JavaScript to trigger image download when #dlButton is clicked
</script>
<title>Full Image Name</title>
</head>
<body>
<div class="container">
<h1>Full Image Name</h1>
<img src="http://webappname.com/getImage?p=imagename.jpg&dl=1>
<button id="dlButton" type="button">Download this image</button>
</div>
</body>
</html>
このURLへの直接アクセスを:
http://webappname.com/getImage?p=imagename.jpg&dl=1
は、デフォルトのブラウザのタイトルを完備し、直接画像を返します。
この動作を確認するには、Dropboxの共有ファイルビューアをご覧ください。
https://www.dropbox.com/s/qmocfrco2t0d28o/Fluffbeast.docx
共有ファイルとダウンロードボタンのプレビューを含む完全なWebページを返します。ボタンをクリックすると、次のURLでダウンロードが開始されます。
https://www.dropbox.com/s/qmocfrco2t0d28o/Fluffbeast.docx?dl=1