Undertow で .jpeg、.png、またはその他のコンテンツを配信する方法を見つけるのに苦労しています。byte[] の送信は機能しません。また、Undertow はノンブロッキングであるため、通常の方法で出力にファイルを書き込みたくありません。
exchange.getOutputStream().write(myFileByteArray);
私がそれを達成できる他の方法はありますか?また、Undertow のデフォルトの Base64 ライブラリを使用して Base64 で画像をエンコードしましたが、どちらも機能しませんでした。
編集:コードを提供する:これは、ファイルをエンコードする私の方法です。.js、.html などのテキスト ファイルでは機能しますが、画像では機能しません。ただし、エンコーディングは機能しているので、要求した人に返送するときに何か間違っているかどうかという質問があります。
これは私がどのように応答しているかです:(スタックオーバーフローの目的でハードコードされています)
exchange.getResponseHeaders().put(Headers.CONTENT_TYPE, "image/jpeg");
exchange.getResponseSender().send(getResource(resource, true));
アンダートウ側で例外はありません。画像がブラウザに表示されません。ブラウザは、画像をデコードできないと言っています..
ありがとう。