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我更新了答案 –