我正在尝试使用'request'库执行REST POST调用,而我正在使用python 2.7
发生了什么,不知怎的,调用没有通过python脚本执行,而且我收到HTTPS连接错误,说无法连接到代理。
我已在我的系统中验证过,代理设置没有问题。在相同设置中,我可以使用 POSTMAN客户端& cURL 执行相同的REST 调用。
以下是代码段:(这里'主机名'是私有IP地址,只能在内部访问)
import requests
import json
import pprint
import sys
url = "https://<hostname>/rest/login-sessions"
json_data = {'authLoginDomain':'',
'password':'abc',
'userName':'xyz',
'loginMsgAck':'true'}
reqHeaders = {'Content-type':'application/json',
'X-Api-Version':'200'}
try:
reqPost = requests.post(url,data=json_data,headers=reqHeaders,verify = False)
pprint.pprint(resPost.json())
except requests.exceptions.Timeout:
print "Re-Try Again"
except requests.exceptions.TooManyRedirects:
print "Try with a different URL"
except requests.exceptions.RequestException as e:
print e
sys.exit(1)
下面粘贴了错误代码:
HTTPSConnectionPool(host='<hostIP>', port=443): Max retries exceeded with url: /rest/login-sessions (Caused by ProxyError('Cannot connect to proxy.', error('Tunnel connection failed: 503 Service Unavailable',)))
我尝试在网络上找到可用的解决方案,但它们都不适用于我。我很困惑,因为当我试图通过python脚本执行REST调用时,只有它通过cURL&amp;邮差我能做同样的事。
如果我在这里犯了一些错误或者有更好的方法,请建议。
我想只使用python'requests'库来实现。此外,我尝试使用python子进程使用cURL执行它,我也得到了相同的错误。