gpt4 book ai didi

python - 在 python 中使用套接字的 HTTP 基本身份验证

转载 作者:太空狗 更新时间:2023-10-30 02:23:39 25 4
gpt4 key购买 nike

如何在 python 中使用基本的 http 身份验证通过套接字连接到服务器。我不想使用 urllib/urllib2 等,因为我的程序执行一些低级套接字 I/O 操作

最佳答案

可能最简单的起点是使用 makefile() 来获得一个更简单的套接字类文件接口(interface)。

import socket, base64

host= 'www.example.com'
path= '/'
username= 'fred'
password= 'bloggs'
token= base64.encodestring('%s:%s' % (username, password)).strip()

lines= [
'GET %s HTTP/1.1' % path,
'Host: %s' % host,
'Authorization: Basic %s' % token,
'Connection: close',
]

s= socket.socket()
s.connect((host, 80))
f= s.makefile('rwb', bufsize=0)
f.write('\r\n'.join(lines)+'\r\n\r\n')
response= f.read()
f.close()
s.close()

如果您需要解释返回的响应以挑选出 HTML 或 auth-required header ,并处理重定向、错误、传输编码等,您将需要做更多的工作。 HTTP 可能很复杂!您确定需要使用低级套接字吗?

关于python - 在 python 中使用套接字的 HTTP 基本身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2929532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com