HTTP リクエストボディをファイル保存するだけのサーバー


ブラウジングしながら特定のサイト内のサーバーレスポンスを  
ローカルPCファイルに保存し続けたいです

* * *

これまでにも何度か質問させていただいてchrome-extension で javascript 上にレスポンスを文字列として取得するまではできました

ただここから直接ファイルに保存するのが javascript のセキュリティ的に無理そうなので、ローカルに保存する為だけのサーバーをたてようかと思っています

Windows 上で http リクエストを受け取ってリクエストボディを保存するサーバーを手軽に実現できる方法はないでしょうか  
ウェブサーバーだと apache とか nginx とかしか使ったことがなくてその上に CGI
をのせてその中でリクエストボディをファイル保存するみたいなことをすればできそうではあるんですが

ruby, python, java, node あたりははいってるのでワンライナーとかリダイレクトあたりで手軽に実現できないでしょうか

リクエストボディのみでヘッダ情報は一切不要  
完全に自分用で公開したり配布したりしないのでセキュリティとかもどうでもよくて最低限落ちてる(起動忘れてる)のに気付けるとうれしいです

よろしくおねがいします

* * *

これまでの関連質問

[ブラウザで開いてるページの ajax
通信の内容を自動でローカルファイルに残したい](https://ja.stackoverflow.com/questions/76026/%e3%83%96%e3%83%a9%e3%82%a6%e3%82%b6%e3%81%a7%e9%96%8b%e3%81%84%e3%81%a6%e3%82%8b%e3%83%9a%e3%83%bc%e3%82%b8%e3%81%ae-
ajax-%e9%80%9a%e4%bf%a1%e3%81%ae%e5%86%85%e5%ae%b9%e3%82%92%e8%87%aa%e5%8b%95%e3%81%a7%e3%83%ad%e3%83%bc%e3%82%ab%e3%83%ab%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab%e3%81%ab%e6%ae%8b%e3%81%97%e3%81%9f%e3%81%84)  
[chrome extension
内からローカルファイルに書き込むことってできませんか？](https://ja.stackoverflow.com/questions/78113/chrome-
extension-%e5%86%85%e3%81%8b%e3%82%89%e3%83%ad%e3%83%bc%e3%82%ab%e3%83%ab%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab%e3%81%ab%e6%9b%b8%e3%81%8d%e8%be%bc%e3%82%80%e3%81%93%e3%81%a8%e3%81%a3%e3%81%a6%e3%81%a7%e3%81%8d%e3%81%be%e3%81%9b%e3%82%93%e3%81%8b)




Rubyのワンライナーだとたとえばこうです。

[code]

    ruby -r webrick -e 'f = open("body.txt", "ab"); s = WEBrick::HTTPServer.new(Port: 4000); s.mount_proc("/"){|req,res| f.puts(req.body); res.status = 200; res.body = "ok\n"}; s.start'
    
[/code]

この例はカレントディレクトリの body.txt というファイルに追加保存していきます。

なお、最新のRubyだと webrick は事前に `gem install webrick` でインストールする必要があります。




Rubyのワンライナーだとたとえばこうです。

[code]

    ruby -r webrick -e 'f = open("body.txt", "ab"); s = WEBrick::HTTPServer.new(Port: 4000); s.mount_proc("/"){|req,res| f.puts(req.body); res.status = 200; res.body = "ok\n"}; s.start'
    
[/code]

この例はカレントディレクトリの body.txt というファイルに追加保存していきます。

なお、最新のRubyだと webrick は事前に `gem install webrick` でインストールする必要があります。

