LWS での Blob オブジェクトの MIME タイプの指定
Lightning Web セキュリティでは、Blob オブジェクトを作成するときに MIME タイプを設定する必要があります。LWS は一部の MIME タイプを許可し、一部の MIME タイプをサニタイズし、残りをブロックします。
Blob オブジェクトの作成時に、MIME タイプを明示的に設定します。
1const blob = new Blob([result], { type: "text/plain" });
MIME タイプを設定しない場合、期待されるコンテンツによってオブジェクトが作成されません。
LWS では、Lightning Locker と同様にこれらの MIME タイプを使用できます。
application/octet-stream — バイナリファイルのデフォルト値
application/json — JSON 形式
application/pdf — Portable Document Format (.pdf)
video/ — すべての video/* MIME タイプ
audio/ — すべての audio/* MIME タイプ
image/ — すべての image/* MIME タイプ
font/ — すべての font/* MIME タイプ
text/plain — テキスト (.txt)
text/markdown — マークダウン (.md)
application/zip — Zip アーカイブ (.zip)
application/x-bzip — Bzip アーカイブ (.bz)
application/x-rar-compressed — RAR アーカイブ (.rar)
application/x-tar — テープアーカイブ (.tar)
LWS は text/html、image/svg+xml、および text/xml MIME タイプをサニタイズします。これらのタイプは許可されますが、LWS は潜在的に悪意のあるコードを削除します。
その他のタイプはブロックされ、「Unsupported MIME type」というエラーメッセージが表示されます。
明示的に許可されていないバイナリファイルを送信するには、MIME タイプを application/octet-stream として指定します。