Pracuję nad aplikacją, która dociera do usługi WWW. Chciałbym rozwinąć klasę proxy, która zwraca fałszywą odpowiedź z usługi, więc nie muszę ciągle trafiać na nią z prośbami podczas opracowywania/testowania innych części aplikacji.Wygeneruj odpowiedź HTTP w języku Ruby
Moja aplikacja oczekuje odpowiedzi wygenerowanej przez 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
Jak mogę wytworzyć obiekt odpowiedzi, nadać mu wszystkie właściwe nagłówki, zwrócić ciąg znaków itp.?
response = ProxyClass.response_object
case response
when Net::HTTPOk
# my app doesn't know it's being lied to
Dzięki.
Dzięki, czasami ludzie polegają na dziwnych bibliotekach, chociaż http ma być tak prosty. Dobrze wiedzieć, że Ruby wbudował się, aby wygenerować całkowitą minimalną odpowiedź http. – Alan
FYI, Net :: HTTP używa łańcuchów do reprezentowania kodów odpowiedzi HTTP, odpowiedź '200' powinna być' '200'' – Lolindrath
widać, że dobrze to wykorzystasz w bibliotece HTTParty https://github.com/jnunemaker/ httparty/blob/master/spec/support/stub_response.rb – 23tux