Skip to content

Commit

Permalink
Merge pull request #212 from YusukeIwaki/porting/8162
Browse files Browse the repository at this point in the history
fix: get extra headers from Fetch.requestPaused event
  • Loading branch information
YusukeIwaki committed Apr 20, 2022
2 parents 2a7a137 + ab3d7f8 commit d441569
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 0 deletions.
8 changes: 8 additions & 0 deletions lib/puppeteer/network_manager.rb
Expand Up @@ -217,6 +217,7 @@ def request_interception=(enabled)
# CDP may have sent a Fetch.requestPaused event already. Check for it.
if_present(@network_event_manager.get_request_paused(network_request_id)) do |request_paused_event|
fetch_request_id = request_paused_event['requestId']
patch_request_event_headers(event, request_paused_event)
handle_request(event, fetch_request_id)
@network_event_manager.forget_request_paused(network_request_id)
end
Expand Down Expand Up @@ -277,12 +278,19 @@ def request_interception=(enabled)
end

if request_will_be_sent_event
patch_request_event_headers(request_will_be_sent_event, event)
handle_request(request_will_be_sent_event, fetch_request_id)
else
@network_event_manager.store_request_paused(network_request_id, event)
end
end

private def patch_request_event_headers(request_will_be_sent_event, request_paused_event)
request_will_be_sent_event['request']['headers'].merge!(
# includes extra headers, like: Accept, Origin
request_paused_event['request']['headers'])
end

private def handle_request(event, fetch_request_id)
redirect_chain = []
if event['redirectResponse']
Expand Down
1 change: 1 addition & 0 deletions spec/integration/request_interception_spec.rb
Expand Up @@ -12,6 +12,7 @@

expect(request.url).to include('/empty.html')
expect(request.headers['user-agent']).not_to be_nil
expect(request.headers['accept']).not_to be_nil
expect(request.method).to eq('GET')
expect(request.post_data).to be_nil
expect(request.navigation_request?).to eq(true)
Expand Down

0 comments on commit d441569

Please sign in to comment.