前提・実現したいこと
JavaでHTTPサーバーアプリの中でマルチパートの応答ボディを生成するためにJava Mail APIのMimeMultipartクラスの利用を考えています。具体的な流れは以下の通りです。
0. MimeMultipartオブジェクトを作成する
0. addBodyPartメソッドでパート毎のデータを追加する。
0. writeToメソッドで応答ボディを取得する。
その仕様によると1.のコンストラクタで固有のバウンダリ文字列が生成されるとの記述があります。
一方でマルチパートの仕様RFC2046にはバウンダリデリミタは内包されるパートに出現してはいけないとの記述があります。
私の懸念
1.のコンストラクタでバウンダリデリミタが確定してしまうので2.で追加されるボディパートにたまたまそれと同じ文字列が含まれていた場合、3.で返される応答ボディがRFC2046に反するクライアントが誤動作するものになってしまうのではないでしょうか。
それとも生成された固有なバウンダリ文字列が、任意のデータ中にたまたま出現する可能性など考慮する必要は無いでしょうか。実際その可能性は天文学的に低いとは思いますが。
ちなみにJava Mail APIが生成するバウンダリ文字列は以下のようなものです。
----=_Part_1111_56564494.1590678488340
補足情報(FW/ツールのバージョンなど)
前提ミドルウェア: apache-tomee-plume-7.1.2
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/01 07:47