Je suis sur Heroku essayant d'accéder à une API qui nécessite que mes applications IP soit blanchissante. Donc, j'ai utilisé le proximo add-on Heroku pour obtenir host / adresse IP pour le whitelist de l'API.
Un test rapide que j'ai mis en place pour tester la connectivité à l'aide de HTTParty échoue. P>
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
7 Réponses :
Ceci est le module que j'ai construit pour faire juste ceci: Ceci utilise l'URL proximo telle qu'elle est ajoutée à votre application Heroku lorsque vous installez l'addon. Vous pouvez donc laisser tomber ce fichier dans votre application et On dirait que mon code fait la même chose La chose que votre code fait cependant, alors ce que je devine, c'est que vous ne pouvez peut-être pas transporter manuellement les informations d'identification correctement pour proximo. P> J'ai couru dans un problème similaire où il ne travaillait pas tout à fait pour moi dès le départ. Je crois que le problème était que je me faisais trébuché qu'il semblait y avoir un "proxy:" Protocole de l'URL de Proximo, mais qui n'était que la partie nom d'utilisateur de l'URL. P> Quoi qu'il en soit, cette mai ou mai Pas d'aide, mais s'il vous plaît laissez-moi savoir si cela fait! p> p> inclure proximoparty code> dans votre classe Fakerequest au lieu de httparty et il devrait "travailler" ". P>
Merci JakeonRails! Je suis passé au client de repos et suis allé sous httparty to net :: http to nice. À la fin, et beaucoup d'heures plus tard, ont décidé d'installer Squid sur une boîte que nous avons et le problème est résolu.
Si je reçois une chance, je vais donner votre module un coup, mais en mode crunch maintenant.
Cela ne fonctionne tout simplement pas. Ive effectivement n'a jamais été en mesure de faire travailler httparty avec un proxy. Fini par utiliser le client de repos.
Je pense que vous devez appeler le local httparty, comme celui-ci:
def make_post self.post "https://test.com", :query => set_defaults end
Lorsque vous configurez httparty comme une inclusion dans votre module, vous devez appeler la méthode httparty via votre classe, donc:
HTTParty peut utiliser une adresse de serveur proxy en utilisant les options de proxy < / a>.
J'ai inclus un lien car il inclut de longues étapes de configuration. Mais point prélevé sur le lien changeant et la page devient invalide. Nous avons utilisé le serveur proxy Squid sur un ami EC2 et l'a appelé une journée. p>
Il souffle mon esprit combien de réponses vous pouvez obtenir sur cette question qui ne fonctionnent pas. Voici comment je l'ai fait fonctionner:
HTTParty::Basement.http_proxy('localhost', 8000, nil, nil)
avec des versions récentes de httparty, c'est aussi simple que d'utiliser le
http_proxy code> méthode < / a>: