如何在Erlang的HTTP客户端(HTTPC)中禁用SSL对等验证



我发送了HTTP客户端的RESTFULL API请求,但我以下错误:

{error,{failed_connect,[{to_address,{"https://example.com",443}},
{inet,[inet],{tls_alert,"record overflow"}}]}}

我发现SSL同行验证使这个问题。我如何禁用它?

我的代码:

test() ->
   inets:start(),
   ssl:start(),
   RequestBody = "",
   Request = {"https://example.com", [{"X-API-CODE",""}, {"Accept","application/json"}, {"access-token",""}], "application/json", RequestBody},
   {ok, {_, _, ResponseBody}} = httpc:request(post, Request, [], []),
   io:format("~st", [ResponseBody]).

尽管禁用验证不是一个好主意,但是在选项中使用{ssl, [{verify, verify_none}]}是可能的。例子: httpc:request(get, {"https://revoked.badssl.com/", []}, [{ssl, [{verify, verify_none}]}], []).

最新更新