Перадача параметраў проксі 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 — іншая бібліятэка з іншым інтэрфейсам транспарту; яе аргумент проксі не з'яўляецца тым жа параметрам толькі таму, што назвы падобныя.