Twilio requests.exceptions.SSLError:HTTPSConnectionPool(主机='api.ap1.twilio.com',端口=443):

问题描述 投票:0回答:1

我正在尝试通过 twilio 向用户发送自定义短信,但出现 ssl 错误

我就是这么做的。当我尝试这段代码时

message = twilio_client.messages.create(
    body=f"Your OTP is: {new_otp}",
    from_=settings.TWILIO_PHONE_NUMBER,
    to=to_phone_number
)

哪里twilio_client

twilio_client = Client(
    settings.TWILIO_ACCOUNT_SID, settings.TWILIO_AUTH_TOKEN, region="ap1"
)

运行这部分代码后出现以下错误

requests.exceptions.SSLError: HTTPSConnectionPool(host='api.ap1.twilio.com', port=443): Max retries exceeded with url: /2010-04-01/Accounts/AC871e4afa1d16f5f1a892a7af250eabf2/Messages.json (Caused by SSLError(SSLCertVerificationError(1, "[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'api.ap1.twilio.com'. (_ssl.c:1007)")))

根据在线研究,我检查了这部分所引用的网址是

https://api.ap1.twilio.com/2010-04-01/Accounts/AC871e4afa1d16f5f1a892a7af250eabf2/Messages.json

但是当我与邮递员核实时,它给了我 404 未找到响应

ssl twilio fastapi twilio-api pydantic
1个回答
0
投票

找到了解决方案,我刚刚从 twilio_client 中删除了 region="ap1" 现在它可以正常工作,而不是

twilio_client = Client(
    settings.TWILIO_ACCOUNT_SID, settings.TWILIO_AUTH_TOKEN, region="ap1"
)

使用

twilio_client = Client(
    settings.TWILIO_ACCOUNT_SID, settings.TWILIO_AUTH_TOKEN
)
© www.soinside.com 2019 - 2024. All rights reserved.