HTTP::PUT (POST の場合もあります) を介して、データ変数を含む添付ファイルとしてファイルを送信する Python スクリプトがあります。
POST を使用すると、PHP (Apache 上) を介して 1 行のコードで取得できます ( echo file_get_contents($_FILES['file']['tmp_name']);
)
しかし、ApacheとPHP(私には利用できません)なしでRubyで同じことをしようとすると、THINで実行されているRubyスクリプトを調べなければなりません。ポートでリッスンして 200 OK で応答するシン スクリプトを作成できましたが、PUT または POST データをキャプチャする方法を見つけるために、例が見つからないか、API を明確に読むことができません。コードスニペットまたはポインターを高く評価しました。
私がこれまでに持っているもの:
require 'rack'
process_requests = lambda { |env|
response = []
response << 200
response << {"Content-Type" => "text/plain"}
body = ["Now What?"]
response << body
return response
}
thin = Rack::Handler::Thin
thin.run process_requests
出力:
>> Thin web server (v1.5.0 codename Knife)
>> Maximum connections set to 1024
>> Listening on 0.0.0.0:8080, CTRL+C to stop
テスト方法:
curl --upload-file /tmp/testfile http://localhost:8080
出力:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 31 0 9 100 22 8 21 0:00:01 0:00:01 --:--:-- 21
Now What?
ファイルは明らかに転送されますが、それを取得する方法がわかりません。
ファイルを確認して受信する方法がわかれば、応答ヘッダーなどを処理できます。
助けてくれてありがとう、