2012-03-03 4 views
0

Ruby Mechanizeを使用して、Webサイトの自動ファイルアップロードスクリプトを作成します。しかし、ウェブサイトの読み込みアップロード手順は、Flashファイルで行われます。私はフェドラーを使用して、Flashファイルからサーバーへのトラフィックをキャプチャしました。はい、これ。Ruby Mechanizeを使用してFlashによるファイルのアップロードをシミュレートする

POST /upload.php HTTP/1.1 
Accept: text/* 
Content-Type: multipart/form-data; boundary=----------KM7KM7Ij5KM7KM7ei4GI3GI3gL6GI3 
User-Agent: Shockwave Flash 
Host: 119.147.15.17<this is fake IP address> 
Content-Length: 7800236 
Connection: Keep-Alive 
Pragma: no-cache 

------------KM7KM7Ij5KM7KM7ei4GI3GI3gL6GI3 
Content-Disposition: form-data; name="Filename" 

learning_objectives.flv 
------------KM7KM7Ij5KM7KM7ei4GI3GI3gL6GI3 
Content-Disposition: form-data; name="FileData"; filename="learning_objectives.flv" 
Content-Type: application/octet-stream 

This_is_the_real_data_in_learning_objectives.flv 

私はこの投稿をどのようにシミュレートできますか?現在私が考えることができるのは、自分でフォームを作成し、ファイルというタイプの入力要素を追加することです。次に、カスタマイズしたヘッダー(ユーザーエージェントなど)でこのフォームを送信します。しかし、私はまだファイルのアップロード部分を扱うのが難しいです。誰でも私を助けることができますか?ありがとう!それは次のようになります

+0

は、あなたはそれがマルチパートフォームをどのように処理するかを把握するMechanizeのコードを見たことがありますか?カスタムマルチパートリクエストを送信するためにそこで使用されるコードを適合させることができるはずです。 –

答えて

1

agent.post url, 'FileData' => File.new('learning_objectives.flv') 
関連する問題