Passar as opções de proxy do HTTPotion para o ibrowse
Configure o transporte ibrowse de um cliente HTTPotion existente com os tipos de valor Elixir e Erlang esperados.
Para uma aplicação HTTPotion existente, passe o endpoint para o seu transporte ibrowse:
response = HTTPotion.get(
"http://www.example.com/",
ibrowse: [proxy_host: ~c"proxy.example", proxy_port: 8080]
)
O literal ~c fornece uma charlist Erlang para o nome do host do proxy. A porta é um inteiro. Um endpoint HTTP da lista de proxies HTTP pode preencher estes dois campos para o pedido público permitido mostrado, sem adicionar uma conta de proxy. O README do HTTPotion observa que as opções do ibrowse normalmente usam charlists em vez de strings binárias Elixir comuns.
O URL externo continua a ser o destino. A lista aninhada de palavras-chave do ibrowse é a entrega das opções de transporte; não é um cabeçalho HTTP nem um parâmetro de consulta.
Trate a Response ou ErrorResponse devolvida pelo HTTPotion através do fluxo habitual da aplicação. O método sem sinal de exclamação pode devolver um objeto de erro, enquanto get! lança uma exceção quando a operação falha.
Esta é uma referência de manutenção para o HTTPotion, que o seu mantenedor marca como obsoleto. O HTTPoison é uma biblioteca diferente com outra interface de transporte; o seu argumento de proxy não é a mesma opção só porque os nomes se parecem.