aws python lambda_python – AWS Lambda发送HTTP请求
这可能是一个简单回答的问题,但我似乎无法弄明白.
背景:我有一个python Lambda函数来获取数据库中的更改,然后使用HTTP将json中的更改发布到URL.我正在使用urllib2这样:
# this runs inside a loop, in reality my error handling is much better
request = urllib2.Request(url)
request.add_header('Content-type', 'application/json')
try:
response = urllib2.urlopen(request, json_message)
except:
response = "Failed!"
从日志中可以看出,发送消息的调用完全被跳过,或者在等待响应时超时.
是否存在我缺少的权限设置,AWS中的出站规则似乎是正确的. [编辑] – 应用于此lambda的VPC确实具有Internet访问权限,并且应用的安全组似乎允许Internet访问. [/编辑]
我已经在本地测试了代码(连接到相同的数据源)并且它可以完美地工作.
看来与lambda发布相关的其他问题与node.js有关,通常是因为url错误.在这种情况下,我正在使用requestb.in url,我知道它在本地运行时正常工作.
编辑:
我已经设置了我的NAT网关,它应该可以工作,我甚至已经去了另一个AWS账户,重新创建条件,它工作正常.我看不到任何会在任何地方阻止访问的安全组.它会继续超时.
编辑:
事实证明,当我设置我的默认路由到NAT网关时,我只是一个白痴,出于习惯,我写了0.0.0.0/24而不是0.0.0.0/0
解决方法:
如果您已在VPC内部署了Lambda功能,则它不会获得公共IP地址,即使它已部署到具有到Internet网关的路由的子网中.它只获取私有IP地址,因此无法自行与公共Internet通信.
为了与公共互联网进行通信,部署在您的VPC中的Lambda功能需要在私有子网中完成,该子网具有route到NAT Gateway或自我管理的NAT instance.
标签:python,python-2-7,amazon-web-services,aws-lambda
aws python lambda_python – AWS Lambda发送HTTP请求相关推荐
- 使用python连接mysql和发送post请求
一.使用python操作数据库 1.1 引入库 注:使用前需要使用老朋友pip下载pymysql. # 导入pymysql连接数据库 import pymysql 1.2 脚本 # 定义连接数据库的方 ...
- Python urllib3和requests发送HTTPS请求时出现SSLError或InsecureRequestWarning
目录 问题及原因分析 优先考虑的解决方法: 下载证书 使用证书 手动获取证书 不推荐使用的备用解决方法: 关闭方法 衍生问题 参考文档 问题及原因分析 在我们通过urllib3和requests进行H ...
- Python接口自动化-python使用requests库发送Get请求
python -Requests的用法官方文档: https://requests.readthedocs.io/zh_CN/latest/ Requests发送Get请求 import reques ...
- array python lambda_Python 06 lambda函数
lambda函数也叫匿名函数,即,函数没有具体的名称.先来看一个最简单例子: def f(x): return x**2 print f(4) Python中使用lambda的话,写成这样 g = l ...
- python使用 requests 模块发送http请求
request 模块可以帮助我们发起http请求 步骤: 1.首先import 下 request 模块 2.然后看请求的方式,选择对应的请求方法 3.接受返回的报文信息 get 方法 (1)get请 ...
- 【Python】使用request发送http请求
发送请求: requests.get("https://www.xxx.com/") 添加header和data参数: headers = {"Accept-Langua ...
- python发post请求json_python request 以json形式发送post请求的正确的姿势
一个http请求包括三个部分,为别为请求行,请求报头,消息主体,类似以下这样: 请求行,请求报头,消息主题. 以json串提交数据,编码格式: application/json, 必须加上 impor ...
- AWS Python Lambda 使用 Layer
使用 Python 书写 AWS Lambda 的一个好处就是能够在控制台中直接编辑源代码,非常方便进行快速验证测试 AWS 环境相关的.这只限于使用 AWS 为 Python Lambda 运行时提 ...
- aws lambda使用_使用python了解AWS Lambda中的多处理
aws lambda使用 Adding some transparency to the black box 为黑匣子添加一些透明度 Let me start with an observation. ...
最新文章
- Nature:首个肠道微生物对药物代谢影响的系统性研究
- 每日一皮:雷神索尔的锤子为什么这么重?
- Webpack入门教程三
- EOS page问题
- Todolist总结
- MySQL复习资料(四)——MySQL-聚合函数
- jquery动态改变图片
- linux mysql2013_linux下MySQL安装
- 揭秘在召唤师峡谷中移动路径选择逻辑?
- Maven: NoSuchMethodError fasterxml.jackson.core强行指定,无法排除
- 计算机网络体系结构及协议
- and5.1PowerManagerService深入分析(四)PMS与Display模块
- 如何修改Linux开启进度条的图片
- API Gateway介绍
- 机房监控系统解说—防火墙篇
- LaTeX 段落:段落缩进、段落间距、行距
- 如何把两张图片拼在一起?
- 如何识别图片上文字的字体?(注:仅限英文)
- 企业级旅行App源码、高仿爱鲜蜂源码、iOS Arkit测距源码等
- 量化投资学习-19:追涨杀跌,一念地*狱;高抛低吸,一念天*堂
热门文章
- Java 内部类 和 匿名内部类
- html前端如何缓存页面,Nuxt中如何做页面html缓存
- feedback.php,feedback.php
- composer 路径_深入学习Composer原理(三)
- hana 表空间_oracle currentval
- 计算机网络中缓存技术,编程达人
- 利用计算机可产生随机数,一种利用计算机生成随机数的方法
- 怎样配oracle环境,oracle配置会话环境(set命令)
- 驱动api_消费者驱动契约已死?
- 单调有界定理适用于函数吗_《实变函数》——论有界变差函数