运行Twilio呼叫项目报KeyError:找不到'my auth_token'环境变量
Twilio项目KeyError报错解决方案
报错信息
Traceback (most recent call last): File
"C:\Users\LENOVO\PycharmProjects\call and text\main.py", line 8, inaccount_sid = os.environ['my account sid'] File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python39\lib\os.py",
line 679, in getitem
raise KeyError(key) from None KeyError: 'my auth_token '
报错原因
该错误为Python环境变量读取失败:你通过os.environ[]读取环境变量时,指定的键名在当前运行环境中不存在,具体可分为三类常见原因:
- 键名输入错误:代码中填写的键名前后有多余空格、大小写不匹配,和实际配置的环境变量名不一致,本次报错末尾的键名
my auth_token尾部带空格就是典型的拼写错误 - 未配置对应环境变量:当前运行环境(包含IDE的独立运行环境)没有添加你要读取的环境变量
- 键值混淆:你错误地将Twilio的SID、token的实际值填在了
os.environ[]的键名位置,而不是填写你定义的环境变量名称
排查步骤
- 打开
main.py第8行附近的代码,检查os.environ[]括号内的键名,确认无多余空格、大小写正确,且填写的是环境变量名而非Twilio的实际凭证值 - 打印当前运行环境的所有环境变量键名,确认目标键是否存在,在读取环境变量前加入如下代码即可查看:
print(list(os.environ.keys())) - 如果你使用PyCharm运行项目,单独检查运行配置中的环境变量列表,PyCharm默认不会同步系统全局环境变量,需要单独配置
解决方法
方案1:配置环境变量(生产环境推荐,安全性更高)
PyCharm运行场景
- 点击右上角运行按钮旁的下拉框,选择「Edit Configurations」
- 找到
main.py对应的运行配置,定位到「Environment variables」配置项 - 新增两组键值对:
- 键
TWILIO_ACCOUNT_SID,值为你从Twilio后台获取的账号SID - 键
TWILIO_AUTH_TOKEN,值为你从Twilio后台获取的授权令牌
- 键
- 保存配置后重新运行项目,代码对应写法如下:
import os account_sid = os.environ['TWILIO_ACCOUNT_SID'] auth_token = os.environ['TWILIO_AUTH_TOKEN']
命令行直接运行场景
运行脚本前先在终端执行临时环境变量配置命令,再启动脚本即可:
set TWILIO_ACCOUNT_SID=你的实际SID值 set TWILIO_AUTH_TOKEN=你的实际令牌值 python main.py
方案2:直接写死凭证(仅本地临时调试使用,禁止提交到公共代码仓库)
如果只是本地快速测试,可以跳过环境变量读取,直接将凭证写入代码:
account_sid = "你的Twilio账号SID实际值" auth_token = "你的Twilio授权令牌实际值"
内容的提问来源于stack exchange,提问作者rockey
相关产品推荐
相关产品推荐

