如何在HTTP get请求中设置用户名和密码?

时间:2014-12-17 09:50:47

标签: python http authentication get-request

我使用Python的requests库来发送get请求:

response = requests.get(url, verify, auth, params, headers)

我的假设是可以直接从浏览器发送任何get-request。例如,在浏览器的地址行中,我需要输入类似的内容:

http://my_url.net?param1=12&param2=777

通过上面的方式,我可以设置我在Python函数中使用的urlparams。但是,如果我使用浏览器发送请求,如何在get请求中设置auth(用户名和密码)。同样的问题适用于其余两个论点:verifyheaders

2 个答案:

答案 0 :(得分:1)

根据您的浏览器,我猜你可以找到可以帮助你做到这一点的扩展程序。

如果您使用cUrl,您可以执行以下操作:

curl http://my_url.net?param1=12&param2=777 --header "Authorization: Basic XXX"

其中“xxx”是字符串“username:password”的Base64编码。

答案 1 :(得分:0)

或者尝试使用password manager with a default realm

url = "http://my_url.net?param1=12&param2=777"

pw_mgr = urllib2.HTTPPasswordMgrWithDefaultRealm()
pw_mgr.add_password(None, url, username, password)

urllib2.install_opener(
    urllib2.build_opener(urllib2.HTTPBasicAuthHandler(pw_mgr)))

request = urllib2.Request(url)
response = urllib2.urlopen(request)