2012-01-04 16 views
0

バイナリ(イメージ)とテキストベースのデータを単一のサーブレットレスポンスで送信する方法の例はありますか?たとえば、サーバー上で生成されたイメージとイメージマップをすべて返します。私はまた、この操作を実行するために使用する混合モードのMIMEタイプを見つけることができませんでした。サーブレット応答でバイナリとテキストデータを返す

思考?

+0

どのクライアントをターゲットにしていますか? – BalusC

答えて

2

ブラウザのサポート(hereを読んで)まだかなりdiceyです。しかし、あなた自身がクライアント側で応答を解析しようとしているなら、かなり良い例があります。あなたが探しているMIMEタイプはmultipart/mixedです。

0

これはHTTPとHTMLの仕組みではありません。 HTMLコードをロードするための最初の要求が行われます。このHTMLコードには、画像のURLを指す<img src="..."/>タグが含まれています。その後、画像をロードするためにブラウザによって第2の要求が行われる。 1回のリクエストでHTMLと画像をダウンロードすることはできません。

2

Data URIを使用すると、生成されたHTMLにバイナリオブジェクトを埋め込むことができます。 など。

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4/8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" alt="Red dot"> 

も参照してください:マルチパート応答のhttps://serverfault.com/questions/241218/why-do-http-servers-not-send-a-single-file-back-when-possible#241224

+0

うわー、それは同時に恐ろしいと素晴らしいです。 – digitaljoel

+0

ページとすべての埋め込みオブジェクトが頻繁に変更されていない場合や、圧縮とキャッシュ制御を使用している場合は、スピードアップを高速化できます。ブラウザは、多くのアイテムではなく更新されているアイテムをチェックします。 –

+0

はい、あなたはちょうど私が「ひどいと恐ろしい」と言った理由を説明しました。 – digitaljoel

0

多くのWAPブラウザは複数の部分からなる回答をサポートしていますが、私は「普通の」ブラウザはそうは思いません。

Browser support of multipart responses

関連する問題