Eine Adresssuche in Rails geht normalerweise von dem Anwendungsprozess aus, der Geocoder ausführt. Ein im Browser des Entwicklers konfigurierter Proxy belegt nicht, dass ein Web-Worker oder Hintergrundjob diese Route nutzt.

Geocoder stellt in seiner Konfiguration Proxy-Einstellungen bereit. Im Initializer der Anwendung lässt sich für beide Zielprotokolle ein expliziter Endpunkt angeben:

Geocoder.configure(
  http_proxy: 'proxy.example.net:8080',
  https_proxy: 'proxy.example.net:8080'
)

Auf diesem Lookup-Pfad über Net::HTTP wählt Geocoder je nach Lookup-Protokoll http_proxy oder https_proxy und zerlegt den Endpunkt in Host, Port und optionale Anmeldedaten. Halten Sie die Einstellung im Einklang mit dem Lookup-Backend und der tatsächlich verwendeten Geocoder-Version. Wenn eine zulässige Abfrage bei einem öffentlichen Anbieter kein Proxy-Konto benötigt, kann die HTTP-Proxy-Liste passende Host:Port-Werte für diesen HTTP-Vermittler liefern.

Konfigurieren Sie den Prozess, der die Arbeit ausführt. Läuft die Geokodierung in einem separaten Job-Worker, aktualisiert eine Änderung am Initializer im Web-Deployment nicht die Konfiguration eines bereits laufenden Workers. Laden Sie den betreffenden Prozess gemäß dem üblichen Deployment-Verfahren der Anwendung neu oder starten Sie ihn neu. Bei Lookups, die Sidekiq ausführt, prüfen Sie den tatsächlichen Worker-Prozess und seine Client-Eingaben.

Ähnliche Artikel