需要将消息响应构造为表,并通过python发布到SNS
大家好,我是python新手,我正在尝试比较两个表,获取关于cidr的报告,并且必须使用SNS主题将报告发送到电子邮件,下面是我编写的代码 我能够得到报告,在发布消息的同时,我得到了验证错误以及如何继续的任何建议,是否有任何方法可以发送消息,如下表所示 代码: 答复:需要将消息响应构造为表,并通过python发布到SNS,python,python-3.x,aws-lambda,amazon-sns,Python,Python 3.x,Aws Lambda,Amazon Sns,大家好,我是python新手,我正在尝试比较两个表,获取关于cidr的报告,并且必须使用SNS主题将报告发送到电子邮件,下面是我编写的代码 我能够得到报告,在发布消息的同时,我得到了验证错误以及如何继续的任何建议,是否有任何方法可以发送消息,如下表所示 代码: 答复: { "errorMessage": "Parameter validation failed:\nInvalid type for parameter Message, value: {'us-w
{
"errorMessage": "Parameter validation failed:\nInvalid type for parameter Message, value: {'us-west-2': {'provider': 'aws', 'cidravaliable': [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, 'centralus': {'provider': 'azure', 'cidravaliable': [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, 'eu-west-1': {'provider': 'aws', 'cidravaliable': [22, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, 'ap-southeast-1': {'provider': 'aws', 'cidravaliable': [19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, 'eu-west-2': {'provider': 'aws', 'cidravaliable': [19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, 'eu-central-1': {'provider': 'aws', 'cidravaliable': [19, 21, 23, 24, 26, 28, 29, 30, 31, 32]}}, type: <class 'dict'>, valid types: <class 'str'>",
"errorType": "ParamValidationError",
"stackTrace": [
" File \"/var/task/lambda_function.py\", line 51, in lambda_handler\n publishOntoSNSTopic(regions)\n",
" File \"/var/task/lambda_function.py\", line 45, in publishOntoSNSTopic\n client.publish(\n",
" File \"/var/runtime/botocore/client.py\", line 316, in _api_call\n return self._make_api_call(operation_name, kwargs)\n",
" File \"/var/runtime/botocore/client.py\", line 607, in _make_api_call\n request_dict = self._convert_to_request_dict(\n",
" File \"/var/runtime/botocore/client.py\", line 655, in _convert_to_request_dict\n request_dict = self._serializer.serialize_to_request(\n",
" File \"/var/runtime/botocore/validate.py\", line 297, in serialize_to_request\n raise ParamValidationError(report=report.generate_report())\n"
驾车注释:您正在发送一个dict,但它应该是一个字符串,可能是
json。dumps
能够使用带有HTML响应的jinja2模板实现此功能。驾车注释:您正在发送一个dict,但它应该是一个字符串,可能是json。dumps
能够使用带有HTML响应的jinja2模板实现此功能。
{
"errorMessage": "Parameter validation failed:\nInvalid type for parameter Message, value: {'us-west-2': {'provider': 'aws', 'cidravaliable': [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, 'centralus': {'provider': 'azure', 'cidravaliable': [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, 'eu-west-1': {'provider': 'aws', 'cidravaliable': [22, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, 'ap-southeast-1': {'provider': 'aws', 'cidravaliable': [19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, 'eu-west-2': {'provider': 'aws', 'cidravaliable': [19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, 'eu-central-1': {'provider': 'aws', 'cidravaliable': [19, 21, 23, 24, 26, 28, 29, 30, 31, 32]}}, type: <class 'dict'>, valid types: <class 'str'>",
"errorType": "ParamValidationError",
"stackTrace": [
" File \"/var/task/lambda_function.py\", line 51, in lambda_handler\n publishOntoSNSTopic(regions)\n",
" File \"/var/task/lambda_function.py\", line 45, in publishOntoSNSTopic\n client.publish(\n",
" File \"/var/runtime/botocore/client.py\", line 316, in _api_call\n return self._make_api_call(operation_name, kwargs)\n",
" File \"/var/runtime/botocore/client.py\", line 607, in _make_api_call\n request_dict = self._convert_to_request_dict(\n",
" File \"/var/runtime/botocore/client.py\", line 655, in _convert_to_request_dict\n request_dict = self._serializer.serialize_to_request(\n",
" File \"/var/runtime/botocore/validate.py\", line 297, in serialize_to_request\n raise ParamValidationError(report=report.generate_report())\n"
Function logs:
START RequestId: 21b40036-a590-4854-ac5b-2b23bff56ecd Version: $LATEST
--------------------------------------------------------------------------------------------------------------
| Region | Provider | Remaining CIDRs |
--------------------------------------------------------------------------------------------------------------
| us-west-2 | aws | 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32 |
| centralus | azure | 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32 |
| eu-west-1 | aws | 22, 24, 25, 26, 27, 28, 29, 30, 31, 32 |
| ap-southeast-1 | aws | 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32 |
| eu-west-2 | aws | 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32 |
| eu-central-1 | aws | 19, 21, 23, 24, 26, 28, 29, 30, 31, 32 |
--------------------------------------------------------------------------------------------------------------