私はWebサービスに到達するアプリケーションを開発中です。私は、サービスの偽の応答を返すプロキシクラスを開発したいので、私はアプリケーションの他の部分を開発/テストしている間は、要求に常にぶつかる必要はありません。RubyでHTTP応答を生成
私のアプリケーションは、Net :: HTTP経由で生成された応答を期待しています。
response = Net::HTTP.get(URI.parse('http://foo.com'))
case response
when Net::HTTPOK
# do something fun
when Net::HTTPUnauthorized
# you get the idea
レスポンスオブジェクトを作成し、すべてのヘッダーを付けたり、ボディストリングなどを返すにはどうすればよいですか?
response = ProxyClass.response_object
case response
when Net::HTTPOk
# my app doesn't know it's being lied to
ありがとうございます。
httpがとても単純だと思われるにもかかわらず、時には人々が奇妙なライブラリに依存することがあります。 Rubyが最低限のhttpレスポンスを生成するために組み込まれていることを知っておきましょう。 – Alan
FYI、Net :: HTTPは文字列を使用してHTTP応答コードを表します。「200」応答は「200」です。 – Lolindrath
HTTPartyライブラリhttps://github.com/jnunemaker/でよく利用できます。 httparty/blob/master/spec/support/stub_response.rb – 23tux