Getting a 'botocore.exceptions.ParamValidationError: Parameter validation failed' error when sending SMS on python
Getting a 'botocore.exceptions.ParamValidationError: Parameter validation failed' error when sending SMS on python
我正在研究一个代码,当 ATM 超过 200 英镑时,它会从 ATM 发送短信,但是,当我 运行 代码时,我收到错误消息
botocore.exceptions.ParamValidationError: Parameter validation failed:
Unknown parameter in input: "PhoneNumber", must be one of: TopicArn, TargetArn, Message, Subject, MessageStructure, MessageAttributes
我的代码是:
import boto3
client = boto3.client('sns','eu-west-1')
client.publish(PhoneNumber='+44XXXXXXXXXX', Message= 'Hello')
其中 X 引用了一个 phone 数字
运行 这在本地使用我的凭据和 phone 号码,消息发送没有问题 -
import boto3
sns = boto3.client('sns', region_name='eu-west-1',
aws_access_key_id='xxxx',
aws_secret_access_key='xxxxx',
aws_session_token='xxxxx')
sns.publish(PhoneNumber='+44xxxxxxxxxx', Message= 'Hello')
我已经检查了您的 Python 代码片段,我可以尽我所能确认您的代码和代码结构没有任何问题。
从错误来看,问题更多地与 boto3 版本有关,即您很可能使用旧版本的 boto3,因此旧版本无法获取所需的参数 "PhoneNumber"
解析步骤:
1.检查boto3的当前版本:
pip show boto3
或
>>> import boto3
>>> boto3.__version__
如果输出低于当前版本 (1.11.9),则继续升级您的 boto3 版本,如下所示。
2。升级你的boto3:
pip install botocore --upgrade
pip install boto3 --upgrade
注意:您需要注销才能使更改生效
希望对您有所帮助!
我正在研究一个代码,当 ATM 超过 200 英镑时,它会从 ATM 发送短信,但是,当我 运行 代码时,我收到错误消息
botocore.exceptions.ParamValidationError: Parameter validation failed: Unknown parameter in input: "PhoneNumber", must be one of: TopicArn, TargetArn, Message, Subject, MessageStructure, MessageAttributes
我的代码是:
import boto3
client = boto3.client('sns','eu-west-1')
client.publish(PhoneNumber='+44XXXXXXXXXX', Message= 'Hello')
其中 X 引用了一个 phone 数字
运行 这在本地使用我的凭据和 phone 号码,消息发送没有问题 -
import boto3
sns = boto3.client('sns', region_name='eu-west-1',
aws_access_key_id='xxxx',
aws_secret_access_key='xxxxx',
aws_session_token='xxxxx')
sns.publish(PhoneNumber='+44xxxxxxxxxx', Message= 'Hello')
我已经检查了您的 Python 代码片段,我可以尽我所能确认您的代码和代码结构没有任何问题。
从错误来看,问题更多地与 boto3 版本有关,即您很可能使用旧版本的 boto3,因此旧版本无法获取所需的参数 "PhoneNumber"
解析步骤:
1.检查boto3的当前版本:
pip show boto3
或
>>> import boto3
>>> boto3.__version__
如果输出低于当前版本 (1.11.9),则继续升级您的 boto3 版本,如下所示。
2。升级你的boto3:
pip install botocore --upgrade
pip install boto3 --upgrade
注意:您需要注销才能使更改生效
希望对您有所帮助!