From: Wakou Aoyama Date: 2000-10-10T07:17:02+09:00 Subject: [ruby-list:25399] Re: multipart/form-data 青山です。 On Mon, 9 Oct 2000 05:06:29 +0900, OMI Toshiaki wrote: > Ruby 1.6.1, Apache/1.3.12, Slackware 7.1.0 と > Ruby 1.6.1, Apache/1.3.12, Kondara MNU/Linux 1.1 です。 > クライアントは > 上記のものと、Windows 95, Windows 2000 で試しました。 > Ruby 1.4.6 では問題なく動作しました。 Apache/1.3.12 (Unix) Debian/GNU mod_ruby/0.2.1 Ruby/1.6.1(2000-10-05) では大丈夫でした。ちょっと大きなファイルを送ってみても大丈夫のようです し、どこで引っかかっているんでしょうね。CGI でという事は、Ruby 単体で も再現しそうですが(というか、[BUG] が出ているので、Ruby 本体の問題でしょ うし)、次のようなサンプルではどうでしょうか? $ cat sample.dat | ruby sample.rb ===== sample.rb #!/usr/local/bin/ruby require 'cgi' class CGI EOL = "\n" end ENV['REQUEST_METHOD'] = 'POST' ENV['CONTENT_LENGTH'] = FileTest.size?('sample.dat').to_s ENV['CONTENT_TYPE'] = 'multipart/form-data; boundary=boundary' upload_file = CGI.new['upload_file'][0] p upload_file.local_path p upload_file.original_filename ===== sample.dat --boundary Content-Disposition: form-data; name="upload_file"; filename="foo" Content-Type: text/plain ここに適当なデータ。前後の空行は必要。 --boundary-- -- 青山 和光 Wakou Aoyama