コンテンツへスキップ
uencoder

multipart MIME メッセージをパースして各パートを取り出す

multipart/form-data や multipart/mixed の MIME メッセージを構成要素のヘッダーとボディに分解し、検査や再処理を行えるようにします。

  1. 1

    Multipart MIME は、複数のパート(テキスト、添付ファイル、フォームフィールド)をバウンダリ文字列で区切って束ねます。各パートは独自のヘッダーとボディを持ちます。パースにはバウンダリでの分割と、各パートの Content-Transfer-Encoding のデコードが必要です。

  2. 2
    MIME デコーダー →

    Multipart メッセージ全体を貼り付けます。ツールはバウンダリで分割し、各パートのヘッダーとボディを抽出し、転送エンコーディング(base64、quoted-printable、7bit)を適用します。

  3. 3
    MIME タイプリファレンス →

    抽出された各パートの Content-Type を調べて、レンダリングや保存方法を判断します(例:image/jpeg → バイナリとして保存、text/plain → 表示)。

  4. 4
    Base64 デコーダー →

    MIME デコード後もパートのボディが Base64 の場合(ネストされたエンコーディング)、ここでデコードして元のバイトを復元します。

よくある質問

バウンダリ文字列はどこにありますか?
トップレベルの Content-Type ヘッダーの boundary="..." として宣言されています。ボディ内の実際の区切り文字は 2 つのダッシュが前置され(--boundary)、最後の区切り文字にはさらに 2 つのダッシュが後置されます。
なぜ空のパートがあるのですか?
Multipart/form-data には、未設定のフォームフィールドに対する空のパートや、バウンダリ分割による先頭/末尾の空セグメントが含まれることがよくあります。パース後にボディが空のパートをフィルタリングしてください。

このタスクを解決するワークフロー

関連ツール