[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
1999/10/17 16:22 from msyk
Title: [teenbbs:0442] httpget でファイルのアップロード

No.   : 442
Sender: msyk
URL   : 
Title : httpget でファイルのアップロード

httpget のリダイレクト動作がかなり大幅に修正されましたね.
どうもありがとうございます. > Shinra さん

でも残念なことに件の掲示板はサイト自体が一時休止になったため,
httpget で書き込みすることはできなくなりました.

ということで本題です.
NC や IE といったブラウザではファイルのアップロードができる
というので, それは PUT メソッドを使うのかなとずっと思っていた
のですが, 例えば

<form action="/cgi-bin/xxxx.cgi" method="post" enctype="multipart/form-data">
<input type="file" name="your_upload_file_name" value="">

といったような POPST メソッド・フォームの場合にアップロードできるのだ
ということをつい最近になってから知りました.
でも enctype="multipart/form-data", type="file" というのは formaid(f)
キットでは処理できません.

そこで httpget でなんとかできないかと思って実験してみたら,
思ったより簡単にファイルのアップロードに成功してしまいました.

Request-Entity-Header の内容を

Content-Type: multipart/form-data ;boundary="xxxxxxxx"

とし, Request-Entity-Body は multipart mime mail と同様の形式で
アップロードしたいファイルを複数まとめて httpget で送信したところ,
ホームページにちゃんとファイルがアップロードされていたのです.

他にも WWW-MAIL.cgi というかなり高機能なウェブ・メイルがメイルの
送信・返信・転送の場合にこの enctype="multipart/form-data", type="file"
を使っていてファイル添付できるのですが, 今のところサーバ・エラーに
になって送信には成功していません.

そのうち multipart/form-data の場合のフォーム・データ処理方法を
詳しくまとめたいと思うのですが, とりあえず参考文献だけでもという
ことで, 興味を持たれた方は RFC1867 と RFC2388 を読んでみて下さい.

[レスを書く]