Python 3.3+ (또는 다른 내장 파이썬 HTTP 클라이언트 라이브러리)에서 http.client
을 사용하면 한 번에 하나의 HTTP 청크로 정확히 청크 HTTP 응답을 읽을 수 있습니까?어떻게 파이썬의 http.client와 정확히 하나의 응답 청크를 읽을 수 있습니까?
HTTP의 청크 분할 전송 인코딩을 사용하여 응답을 작성하는 서버에 기존 테스트 픽스처 (http.client
을 사용하여 Python으로 작성)를 확장하려고합니다. 간단하게하기 위해 클라이언트에서 HTTP 청크를받을 때마다 메시지를 인쇄 할 수 있기를 원한다고 가정 해 봅시다.
conn = http.client.HTTPConnection(...)
conn.request(...)
response = conn.getresponse()
resbody = []
while True:
chunk = response.read(1024)
if len(chunk):
resbody.append(chunk)
else:
break
conn.close();
을하지만 1024 개 바이트 덩어리 여부에 관계없이 서버가 10 바이트 덩어리 또는 10MiB 청크를 보내는의 읽
내 코드는 많은 응답을 읽기 위해 상당히 표준 패턴을 따른다. 이, http.client
불가능 또 다른 내장 HTTP 클라이언트 라이브러리 가능한 경우
while True:
chunk = response.readchunk()
if len(chunk):
resbody.append(chunk)
else
break
:
내가 무엇을 찾고은 다음과 같은 것입니까? 기본 클라이언트 lib로는 불가능한 경우 pip
모듈을 설치할 수 있습니까?
이 모든 항목은 http://docs.python-requests.org/ko/latest/user/advanced/#body-content-workflow? –
나는 그것이 확실하지 않습니다. 또는, 만약 그렇다면, 나는 너무 멍청해서 응답을 –