我今天开始使用Twilio for Python3,我发现很难让第一个基本脚本工作。
send_sms.py
from twilio.rest import Client
# Your Account SID from twilio.com/console
account_sid = "your_account_sid"
# Your Auth Token from twilio.com/console
auth_token = "your_auth_token"
client = Client(account_sid, auth_token)
message = client.messages.create(
to="+15558675309",
from_="+15017250604",
body="Hello from Python!")
print(message.sid)
send_sms.py是Twilio“入门”面板要求我测试的第一个程序。问题是我有一个代理网络,其中包含用户名,密码和代理站点。没有这个连接,我得到ConnectionRefusedError。经过几次测试后,我意识到连接代理网络失败意味着程序失败。我知道使用ProxiedTwilioHttpClient()作为可能的解决方案,但完全不知道如何实现它。
我要求的是如何在上面的代码示例中添加代理网络身份验证。我可以将该示例用于其他特定程序的未来参考。如果您有任何疑问,请随时在下面添加评论。
谢谢。
答案 0 :(得分:-1)
诀窍是传入一个自定义的HttpClient,如下所示:
import os
from requests import Session
from twilio.rest import Client
from twilio.http.http_client import HttpClient
proxy_server = 'http://user:pass@proxy.example.com:80'
ProxySession = Session()
ProxySession.proxies.update({'http': os.environ.get('http_proxy', proxy_server)})
ProxyClient = HttpClient()
ProxyClient.session = ProxySession
account_sid = 'xxx'
account_token = 'xxx'
client = Client(account_sid, account_token, http_client=ProxyClient)