在iex中设置httpc代理(Phoenix项目)

时间:2017-08-04 21:30:55

标签: erlang elixir phoenix-framework

在代理后面使用iex时,我对Wolfram Alpha的查询失败了。 我尝试使用

设置代理
iex(1)> :httpc.set_options({:proxy, {"proxy.mycompany.org", 1234}})

但这会产生CaseClauseError错误。如何在iex中为此Erlang库设置选项? 谢谢。

背景:我正在阅读这本书"编程凤凰"

1 个答案:

答案 0 :(得分:3)

三件事:

  1. set_options接受选项列表,而不是一个选项。

  2. 主机名必须是Erlang字符串,在Elixir中称为charlist,并使用Elixir中的单引号创建。

  3. 该选项需要一个元组{Proxy, NoProxy},其中NoProxyNoProxyDesc个选项的列表。您可能想要阅读该文档;我在下面使用空列表。

  4. 您还可以使用关键字列表语法将其缩短:

    iex(1)> :httpc.set_options([{:proxy, {{'proxy.mycompany.org', 1234}, []}}])
    :ok
    

    您还可以使用关键字列表语法将其缩短:

    iex(2)> :httpc.set_options([proxy: {{'proxy.mycompany.org', 1234}, []}])
    :ok