.NET からRailsサーバーにPOST
.NETのネットワークプログラミングから、RailsサーバーにPOSTでファイルをアップロード。
CSRF対策 protect_from_forgery に対応しなければならないので、まずnewをGETして、authenticity_tokenとクッキーを取得する必要がある。
authenticity_tokenはPOSTのパラメータに入れる必要がある。
あとは取得したクッキーをリクエストにセットして、セッション情報を維持する。
これで、POSTは問題なく完了して、ステータスコード302。
しかし、createメソッドの最後のredirect_toにしたがって、他URLにリダイレクトする流れ、そのGETでエラー。
Rack::Multipart::Parser#fast_forward_to_first_boundaryで
EOFError - bad content body ってやつ。
ネットを探し回っても、よく分からない。
http://d.hatena.ne.jp/ir9Ex/20070206/1170712339
これやっても解決しない。
リダイレクト先のurlを最初から.NETでリクエストしたら、エラーにならない。
最後のredirect_toをスタティックなページ、今回はpublic/index.htmlにしたらエラーにならなくなった。
参考サイト
http://dobon.net/vb/dotnet/internet/webrequestpost.html
http://dobon.net/vb/dotnet/internet/usecookie.html
http://www.atmarkit.co.jp/fdotnet/dotnettips/326cookie/cookie.html
http://d.hatena.ne.jp/ir9Ex/20070206/1170712339
今回は.NETでやったけど、Rubyでやる場合の参考サイト
http://q.hatena.ne.jp/1214807688
http://mymo.blog8.fc2.com/blog-entry-15.html
http://q.hatena.ne.jp/1297832226
http://www.red.oit-net.jp/tatsuya/java/browser/useragent.htm#MSIE