Skip to content

Commit

Permalink
Fixing VCR redirection (#20747)
Browse files Browse the repository at this point in the history
Using the location passed as part of the redirection response if
it is an absolute URL.
  • Loading branch information
cochi2 authored Sep 20, 2021
1 parent 856f247 commit e7d3348
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion tools/vcrpy/vcr/stubs/aiohttp_stubs/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,11 @@ def play_responses(cassette, vcr_request):
# If we're following redirects, continue playing until we reach
# our final destination.
while 300 <= response.status <= 399:
next_url = URL(response.url).with_path(response.headers["location"])
new_location = response.headers["location"]
potential_next_url = URL(new_location)
next_url = (potential_next_url
if potential_next_url.is_absolute()
else URL(response.url).with_path(new_location))

# Make a stub VCR request that we can then use to look up the recorded
# VCR request saved to the cassette. This feels a little hacky and
Expand Down

0 comments on commit e7d3348

Please sign in to comment.