Jestem na Heroku, próbując uzyskać dostęp do interfejsu API, który wymaga umieszczenia mojego IP aplikacji na białej liście. Więc użyłem dodatku proximo heroku, aby uzyskać host/ip dla białej listy APi.HTTParty z Proxy
Szybki test, który skonfigurowałem do testowania łączności za pomocą HTTParty, zawodzi.
class FakeRequest
include HTTParty
http_proxy 'XX.XXX.XX.XX', 80, 'user', 'pass'
def set_defaults
{:api_key=>"BLARG_BLARG",
:login_name=>"user",
:method => "do_something",
:response_format => "json",
:v => "1.0",
:login_password=>"pass"}
end
def make_post
HTTParty.post "https://test.com", :query => set_defaults
end
end
Będzie to tak: req = FakeRequest.new req.make_post
zwraca komunikat błędu z API twierdząc, że źródłem IP nie jest na białej liście. Spojrzałem na źródłowy adres IP i nie korzystałem z proxy. Jak mogę uczynić HTTParty po użyciu serwera proxy, a nie adresu IP mojego ISP?
Dzięki Jakeonrails! Przełączyłem się na klienta odpoczynku i przeszedłem pod HTTParty do Net :: HTTP bez rezultatu. W końcu, i wiele godzin później, zdecydowaliśmy się zainstalować squid na pudełku, który mamy i problem został rozwiązany. – RidingRails
Jeśli dostanę szansę, oddam ci twój moduł, ale w trybie kryzysu teraz. – RidingRails
to po prostu nie działa. Naprawdę nigdy nie byłem w stanie sprawić, by httparty działały z proxy. Skończyło się na używaniu reszty-klienta. –