10

重複の可能性:
Javascript を使用して Base64 にエンコードするにはどうすればよいですか?

マルチパート/フォームデータを介してユーザーがファイル (画像、pdf、rtf) をアップロードできるようにする機能を備えた、Java、Wicket、および JQuery に基づく Web アプリケーションがあります。

当社の Web セキュリティ インフラストラクチャは、すべての http トラフィックをフィルタリングして、XSS 攻撃、SQL インジェクション、バッファ オーバーランなどの悪意のある可能性のあるコンテンツを検出します。

フィルターは、通常のテキスト入力フィールドとファイル データを区別しないため、アップロードされた多くのバイナリ ファイルから誤検知を検出し、それらのファイルがアップロードされないようにします。セキュリティ ポリシーを変更できません。

これを回避する最善の方法は、ファイル データを base-64 でエンコードして、電子メール クライアントと同様の Content-Transfer-Encoding:base64 で送信することです。

バイナリをbase64またはその他の非バイナリ形式として転送するようブラウザに指示する方法はありますか?

そうでない場合は、JavaScript を使用して手動で行うことができますか?

4

1 に答える 1

4

Content-Transfer-Encoding: base64
W3Cからの引用を設定できるようです:

その部分の値がデフォルト (7BIT) エンコーディングに準拠していない場合、各部分はエンコードされ、「Content-Transfer-Encoding」ヘッダーが提供されます。

http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4.2

使用中の Java Web サーバーが parameter を無視しない場合Content-Transfer-Encoding

于 2012-06-22T04:55:53.483 に答える