@@ -18,14 +18,14 @@ class ClientResponse:
18
18
def __init__ (self , reader ):
19
19
self .content = reader
20
20
21
- def get_header (self , keyname , value = None ):
22
- try :
23
- return next (( v for k , v in self . headers . items () if k .lower () == keyname . lower ()))
24
- except StopIteration :
25
- return value
21
+ def _get_header (self , keyname , default ):
22
+ for k in self . headers :
23
+ if k .lower () == keyname :
24
+ return self . headers [ k ]
25
+ return default
26
26
27
27
def _decode (self , data ):
28
- c_encoding = self .get_header ( "Content-Encoding" )
28
+ c_encoding = self ._get_header ( "content-encoding" , None )
29
29
if c_encoding in ("gzip" , "deflate" , "gzip,deflate" ):
30
30
try :
31
31
import deflate
@@ -45,10 +45,10 @@ async def read(self, sz=-1):
45
45
return self ._decode (await self .content .read (sz ))
46
46
47
47
async def text (self , encoding = "utf-8" ):
48
- return (await self .read (int (self .get_header ( "Content-Length " , - 1 )))).decode (encoding )
48
+ return (await self .read (int (self ._get_header ( "content-length " , - 1 )))).decode (encoding )
49
49
50
50
async def json (self ):
51
- return _json .loads (await self .read (int (self .get_header ( "Content-Length " , - 1 ))))
51
+ return _json .loads (await self .read (int (self ._get_header ( "content-length " , - 1 ))))
52
52
53
53
def __repr__ (self ):
54
54
return "<ClientResponse %d %s>" % (self .status , self .headers )
0 commit comments