python - AWS Lambda 在 prod 中部署时出现 400 错误
问题描述
我有一个 lambda 函数,可以根据 S3 事件向 slack 发送通知。我在沙箱中配置并测试了该功能并且它可以工作,但是当部署到生产环境时它给了我一个 400 错误。该函数没有附加 VPC,两种设置中的所有配置都相同。生产环境中错误的根源可能是什么?
源代码:
slack_message = {
'channel': SLACK_CHANNEL,
'text': message_body,
'username': 'aws-lambda-bot',
'icon_emoji': ':checkered_flag:'
}
req = Request(HOOK_URL)
try:
response = urlopen(req, data=json.dumps(slack_message).encode())
logger.info(response)
response.read()
logger.info("Message posted to %s", slack_message['channel'])
except HTTPError as e:
logger.error("Request failed: %d %s", e.code, e.reason)
except URLError as e:
logger.error("Server connection failed: %s", e.reason)
试验结果。
沙盒:
解决方案
推荐阅读
- javascript - chrome 扩展构建(HTML 文本到剪贴板保护程序)
- java - 将最小和最大移动到链表的头部和尾部
- c# - 当数据源中的两列匹配时如何过滤网格视图
- image - 无法消费 Rgba
Rust 中的(无方法) - python - 如何从字符串中提取数字(年份)?
- flutter - 升级到 XCode 版本 12 后出现新的构建系统错误
- mysql - 在 SQL 中对具有相似名称的列求和
- angular - 如何可选地提供拦截器
- c# - 加载资源失败:服务器响应状态为 404 () - 图像未从数据库 ASP.NET C# 加载
- python - 使用 Telethon 从 Telegram 频道实时获取消息