Передача прокси-параметров HTTPotion в ibrowse
Настройте транспорт ibrowse существующего клиента HTTPotion с ожидаемыми типами значений Elixir и Erlang.
Для существующего приложения HTTPotion передайте конечную точку в его транспорт ibrowse:
response = HTTPotion.get(
"http://www.example.com/",
ibrowse: [proxy_host: ~c"proxy.example", proxy_port: 8080]
)
Литерал ~c предоставляет Erlang charlist для имени хоста прокси. Порт — целое число. Конечная точка HTTP из списка HTTP-прокси может заполнить эти два поля для показанного разрешённого публичного запроса, не добавляя прокси-аккаунт. В README HTTPotion указано, что параметры ibrowse обычно используют charlist, а не обычные бинарные строки Elixir.
Внешний URL остаётся адресом назначения. Вложенный список ключевых слов ibrowse — это передача параметров транспорта; он не является HTTP-заголовком или параметром запроса.
Обрабатывайте Response или ErrorResponse, возвращаемый HTTPotion, обычным потоком приложения. Метод без восклицательного знака может вернуть объект ошибки, тогда как get! выбрасывает исключение при неудачной операции.
Это справочник по сопровождению HTTPotion, который его сопровождающий помечает как устаревший. HTTPoison — другая библиотека с другим интерфейсом транспорта; её аргумент прокси не является тем же параметром только потому, что названия похожи.