gpt4 book ai didi

erlang - 为什么我的代码在 erlang 21 中出现错误,而在 erlang 20 中没有?

转载 作者:行者123 更新时间:2023-12-04 17:30:11 24 4
gpt4 key购买 nike

当我在 Erlang 21 中执行以下操作时,出现错误。

inets:start(),
ssl:start(),
httpc:request(post,
{"https://sandbox.itunes.apple.com/verifyReceipt", [], "application/json", []},
[], []).

错误是:
=INFO REPORT==== 3-Oct-2018::19:32:47.728491 ===
TLS client: In state hello received SERVER ALERT: Fatal - Handshake Failure

{error,{failed_connect,[{to_address,{"sandbox.itunes.apple.com",443}},
{inet,[inet],{tls_alert,"handshake failure"}}]}}

当我在 Erlang 20 中做同样的事情时,它工作得很好。

有人能告诉我可能有什么问题吗?

最佳答案

做了一些研究,发现由于OTP 21 Highlights

Security: "unsecure" ciphers removed from defaults in SSL and SSH.



您需要手动配置 SSL(启用密码)
EnabledCiphers = ssl:cipher_suites(all, 'tlsv1.2'),
Options = [{ciphers, EnabledCiphers}],

httpc:request(post,{"https://sandbox.itunes.apple.com/verifyReceipt",
[],"application/json", []}, [{ssl,Options}], []).

关于erlang - 为什么我的代码在 erlang 21 中出现错误,而在 erlang 20 中没有?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52637744/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com