Uma consulta de endereços no Rails parte normalmente do processo da aplicação que executa o Geocoder. Um proxy configurado no navegador do programador não prova que um worker web ou uma tarefa em segundo plano use essa rota.

O Geocoder expõe definições de proxy na sua configuração. No initializer da aplicação pode indicar-se um endpoint explícito para ambos os protocolos de destino:

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

Neste caminho de consulta através de Net::HTTP, o Geocoder escolhe http_proxy ou https_proxy conforme o protocolo da consulta e decompõe o endpoint em anfitrião, porta e credenciais opcionais. Mantenha a definição coerente com o backend de consulta e com a versão do Geocoder realmente utilizada. Quando uma consulta permitida a um fornecedor público não exige conta de proxy, a lista de proxies HTTP pode fornecer valores host:port adequados para este intermediário HTTP.

Configure o processo que executa o trabalho. Se a geocodificação correr num worker de tarefas separado, alterar um initializer na implementação web não atualiza a configuração de um worker já em execução. Recarregue ou reinicie o processo em causa segundo o procedimento habitual de implementação da aplicação. Para as consultas executadas pelo Sidekiq, verifique o processo real do worker e as suas entradas de cliente.

Artigos relacionados