2017-01-13 3 views
2

Я использую elixir, чтобы сделать некоторые запросы XMLRPC хосту на моем компьютере, который принимает только вызов из 127.0.xy, где x и y могут быть конфигурируемы, но ip не может быть 127.0.0.1.start erlang/elixir на определенном интерфейсе ip-адрес

Простые curl Запросы к этому хосту не удастся, если я не добавлю флаг --interface 127.0.x.y.

Как я могу запустить приложение elixir с данным интерфейсом ip, отличным от 127.0.0.1?

Библиотекой, которую я использую для отправки запроса, является HTTPoison, если это может быть полезно.

+0

ли эту работу (с правильным URL и IP): 'HTTPoison.get "Http: // Localhost: 8000 /", [], [Хакни : [connect_options: [ip: {127, 0, 0, 1}]]] '? – Dogbert

+0

Да, спасибо! Я потратил целый день, чтобы найти этот вариант в документации 'hackney' и исходном коде ... Если вы преобразуете свой комментарий в ответ, я его приму – Red

ответ

5

Вы можете пройти ip в connect_options до hackney. hackney проходит connect_options непосредственно gen_tcp, который принимает ip:

HTTPoison.get("http://...", [], [hackney: [connect_options: [ip: {127, 0, 0, 1}]]])