[英]HTTP redirect to HTTPS Python
我正在尝试使用以下正确的凭据登录到API,我面临的问题是,如您在终端部分中看到的那样,http URL重定向到了https url,并且出现401错误,因为我可以使用,这是不正确的我的凭据以使用常规浏览器登录API。
有人可以告诉我如何解决此问题,因为我认为这是一个非常常见的问题,但是由于我对https的了解不足,因此无法解决此问题。
--------------Program--------------------------------------------
import requests
authentication = (<username>, <password>)
response = requests.get("http://sdmapi-stage.cloudapps.cisco.com/sdm/api/v0.1/device/?start=1&pagesize=100000",
allow_redirects=True,
auth=authentication)
if not response.ok:
print response.status_code
return response.status_code
--------------Terminal--------------------------------------------
Starting new HTTP connection (1): sdmapi-stage.cloudapps.cisco.com
Starting new HTTPS connection (1): wwwin-sso-nprd.cisco.com
401
您应该使用Session
对象,而不是简单的get on request。 ( http://docs.python-requests.org/en/latest/user/advanced/ )
s = requests.Session()
s.auth = ('user', 'pass')
您的凭据将用于进一步的请求
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.