2012-09-09 6 views
9

HTMLフォームの場合。私は混乱して、私はenctype = 'application/octet-stream'を設定しようとしていますが、サーバーはcontent-type = 'application/x-www-form-urlencoded'(デフォルト値)の要求を受け取ります。コンテンツタイプとenctypeの違い

答えて

10

enctype属性は、フォームデータをサーバーに送信するときにブラウザによって使用されるコンテンツタイプ(HTTP用語では、Content-Typeヘッダーに示される)を指定します。

しかし、specは、この文脈で唯一の2つのコンテンツタイプ、application/x-www-form-urlencoded(デフォルト)とmultipart/form-dataを定義し、追加されます:「他のコンテンツタイプのための行動が指定されていない」とは何実際に起こることのブラウザは静かでenctype属性を無視するということですその他の値は、デフォルト値を使用します。たとえば、あなたがこれを見ることができます。 Firebugでドキュメントを検査してください:form要素を調べると、DOMペインにはenctypeという既定値のプロパティが含まれています。 Webブラウザでは、マークアップのエラーについて黙っていることが多いです。

タイプapplication/octet-streamは、ブラウザがこのような情報を送信した場合、「これは不明な(または指定されていない)構造のバイナリデータの塊です」と効果的に表現されるため、この文脈ではあまり役に立ちません。

関連する問題