我正在尝试构建一个测试Twilio脚本,以便POST请求只能使用方法返回的值是一个脚本。 这些值被设置为环境变量,我使用与脚本相同的命令检查它们在Python shell中是否正确。 正在使用Python 2.7。 环境变量存储为字符串并返回。
from twilio.rest import TwilioRestClient
import os
ACCOUNT_SID = os.environ['ACCOUNT_SID']
AUTH_TOKEN = os.environ['AUTH_TOKEN']
client = TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN)
def target_number():
return os.environ['TARGET_NUMBER']
def my_number():
return os.environ['MY_NUMBER']
message = client.messages.create(
body="foo bar", # Message body, if any
to=target_number(),
from_=my_number(),
)
print message.body
我收到以下错误:
python my_twilio_testing_script.py
Traceback (most recent call last):
File "my_twilio_testing_script.py", line 19, in <module>
to=target_number(),
File "my_twilio_testing_script.py", line 9, in target_number
return os.environ['TARGET_NUMBER']
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/UserDict.py", line 23, in __getitem__
raise KeyError(key)
KeyError: 'TARGET_NUMBER'
答案 0 :(得分:0)
Twilio开发者传道者在这里。
您的某些环境变量似乎正在运行,否则在设置帐户SID和身份验证令牌时脚本会爆炸。
所以似乎可能没有设置TARGET_NUMBER。在运行脚本的终端窗口中,您是否能够执行以下bash命令:
$ echo $TARGET_NUMBER
这是否显示您期望的数字?如果没有,您可能需要再次导出环境变量。