2010年12月21日火曜日

Opera が input-file-multiple に対応したみたいだけど・・・

「選択...」が「ファイルを追加」になってたからChange Log見たら input-file-multiple に対応したのね。ファイルをドラッグして複数選択する形のようです。
これは複数のファイルを一括アップロードできるHTML5の進(新)機能で、こちらのCozy Chatはその機能に対応しているつもりでした

ですが、ローカルサーバーで試してみると複数アップロードされるどころか1つもアップロードされない。
標準入力を見てみると・・・

------------WDbAI8SC9Kuv38IoRw3Iho
Content-Disposition: form-data; name="identifier"

2ace9e761f5c848-1292922512
------------WDbAI8SC9Kuv38IoRw3Iho
Content-Disposition: form-data; name="view"

50
------------WDbAI8SC9Kuv38IoRw3Iho
Content-Disposition: form-data; name="password"


------------WDbAI8SC9Kuv38IoRw3Iho
Content-Type: multipart/mixed; charset=utf-8; boundary=------------WDbAI8SC9Kuv38CVo5zT1S
Content-Disposition: form-data; name="file"

------------WDbAI8SC9Kuv38CVo5zT1S
Content-Disposition: form-data; name="file"; filename="lock.png"
Content-Type: image/png

------------WDbAI8SC9Kuv38CVo5zT1S
Content-Disposition: form-data; name="file"; filename="out.png"
Content-Type: image/png


------------WDbAI8SC9Kuv38CVo5zT1S
Content-Disposition: form-data; name="file"; filename="smile.png"
Content-Type: image/png


------------WDbAI8SC9Kuv38CVo5zT1S--

------------WDbAI8SC9Kuv38IoRw3Iho
Content-Disposition: form-data; name="text"

あいうえお
------------WDbAI8SC9Kuv38IoRw3Iho
Content-Disposition: form-data; name="face"


------------WDbAI8SC9Kuv38IoRw3Iho
Content-Disposition: form-data; name="room"

1
------------WDbAI8SC9Kuv38IoRw3Iho--
※バイナリーデータや一部フォームデータは省いてあります

"multipart/mixed" なんて使ってるし。

え?これHTML5の仕様通りなの?とGoogle先生に聞いてみたところ、input//fileの「複数ファイルの選択」にこんな文章が。

HTML5 では multiple 属性が指定されていれば複数ファイルを提出可能であり、 指定されていなければ単一ファイルのみ提出可能とされています。 また、 multipart/form-data による提出も、従来の multipart/mixed を用いた方法ではなく、直接複数の実体本体として multipart/form-data に含める方法が採られています。 こちらの方がより単純であり、利用者エージェントにとってもフォーム処理エージェントにとっても処理しやすいと思われます。

Operaさん・・・挑戦心の強さは認めるけど、このままじゃHTMLコーダーの中でIEと同じ「消えて欲しい」扱いに・・・。

0 件のコメント:

コメントを投稿