0
我有一个运行在aws云上的弹性负载平衡器。我在端口443上附加了一个HTTPS侦听器,并且它在证书管理器中使用证书。我想从https脚本发送https请求到弹性负载。我无法弄清楚我应该如何实施这个确切的API调用。如何在AWS请求库中使用AWS证书?
我有一个运行在aws云上的弹性负载平衡器。我在端口443上附加了一个HTTPS侦听器,并且它在证书管理器中使用证书。我想从https脚本发送https请求到弹性负载。我无法弄清楚我应该如何实施这个确切的API调用。如何在AWS请求库中使用AWS证书?
您可以使https请求到ELB的DNS。
要生成HTTPS请求,请使用以下引用自this answer的脚本。
import urllib.request r = urllib.request.urlopen('<DNS OF ELB>') print(r.read())
如果你真的想使用http.client,则必须调用
endheaders
你发送的请求头之后:import http.client conn = http.client.HTTPSConnection('DNS OF ELB', 443) conn.putrequest('GET', '/') conn.endheaders() # <--- r = conn.getresponse() print(r.read())
的快捷方式
putrequest
/endheaders
,你也可以使用request
方法如下:import http.client conn = http.client.HTTPSConnection('DOMAIN', 443) conn.request('GET', '/') # <--- r = conn.getresponse() print(r.read())
更新1
对于Python 2.7,您可以如果您正在使用httplib
使用httplib的或urllib2的
,HTTPS支持仅在socket
模块与SSL支持编译。
对于urllib2请参考此article。
urllib.request似乎不适用于python2.7,我安装了urllib,但无法导入urllib.requests,traceback表示模块不存在。 –
没有提到的解决方案似乎工作。 –
嗨Piyush我更新了答案 –