如何使用Erlang进行HTTPS请求?

问题描述 投票:21回答:2

我尝试了inets库,但它超时了。我不认为它支持HTTPS。我正在尝试使用ibrowse,但它不起作用。

ssl https erlang otp inets
2个回答
30
投票

这对我来说很好:

1> application:start(inets).
ok
2> application:start(ssl).  
ok
3> http:request(head, {"https://example.com", []}, [{ssl,[{verify,0}]}], []).
{ok,{{"HTTP/1.1",200,"OK"},
     [{"cache-control","max-age=0, proxy-revalidate"},
      {"date","Sun, 23 May 2010 00:38:33 GMT"},
      {"server","BAIDA/1.0.0"},
      {"content-type","text/html; charset=windows-1251"},
      {"expires","Sun, 23 May 2010 00:38:33 GMT"},
      {"set-cookie",
       "uid=9041986921274575113; domain=.example.com; path=/; expires=Tue, 19 Jan 2038 03:14:07 GMT"}],
     []}}

http:request("https://example.com")也会工作,你只需要在任何请求之前加载适当的应用程序。


1
投票

这对我有用:

application:start(crypto),
application:start(public_key),
application:start(ssl),
application:start(inets).

httpc:request(head, {"https://example.com", []}, [{ssl,[{verify,0}]}], []).
© www.soinside.com 2019 - 2024. All rights reserved.