mirror of https://github.com/scrapy/scrapy.git
Fix WrappedRequest.get_header raising TypeError if default is None (#6310)
This commit is contained in:
parent
8c0bc1b698
commit
915f40fa81
|
|
@ -166,7 +166,8 @@ class WrappedRequest:
|
|||
return name in self.request.headers
|
||||
|
||||
def get_header(self, name, default=None):
|
||||
return to_unicode(self.request.headers.get(name, default), errors="replace")
|
||||
value = self.request.headers.get(name, default)
|
||||
return to_unicode(value, errors="replace") if value is not None else None
|
||||
|
||||
def header_items(self):
|
||||
return [
|
||||
|
|
|
|||
|
|
@ -43,6 +43,13 @@ class WrappedRequestTest(TestCase):
|
|||
def test_get_header(self):
|
||||
self.assertEqual(self.wrapped.get_header("content-type"), "text/html")
|
||||
self.assertEqual(self.wrapped.get_header("xxxxx", "def"), "def")
|
||||
self.assertEqual(self.wrapped.get_header("xxxxx"), None)
|
||||
wrapped = WrappedRequest(
|
||||
Request(
|
||||
"http://www.example.com/page.html", headers={"empty-binary-header": b""}
|
||||
)
|
||||
)
|
||||
self.assertEqual(wrapped.get_header("empty-binary-header"), "")
|
||||
|
||||
def test_header_items(self):
|
||||
self.assertEqual(self.wrapped.header_items(), [("Content-Type", ["text/html"])])
|
||||
|
|
|
|||
Loading…
Reference in New Issue