chrome.webRequest.onHeadersReceived not working properly when a proxy is there
Reported by
khalid....@gmail.com,
Apr 3 2018
|
|||||||
Issue description
UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36
Steps to reproduce the problem:
1. be in a network with a proxy (bluecoast as example)
2. use chrome.webRequest.onHeadersReceived API
What is the expected behavior?
This api must give to the listener all headers sent by the distination server
What went wrong?
The listener receives headers sent by the proxy instead of those of the server:
"responseHeaders": [
{
"name": "Proxy-Authenticate",
"value": "NEGOTIATE"
},
{
"name": "Proxy-Authenticate",
"value": "NTLM"
},
{
"name": "Proxy-Connection",
"value": "close"
},
{
"name": "Connection",
"value": "close"
},
{
"name": "Content-Length",
"value": "1437"
}
],
Did this work before? No
Does this work in other browsers? Yes
Chrome version: 65.0.3325.181 Channel: stable
OS Version: 10.0
Flash Version:
It works properly on firefox
,
Apr 5 2018
@Reporter: Please provide a sample test case/URL using chrome.webRequest.onHeadersReceived API for testing this issue from TE end. Any further information on reproducing the issue will help in triaging the issue in a better way. Thanks!
,
Apr 5 2018
I'm pretty sure extensions get both sets of headers. Note that when we get an authentication challenge, there are no headers from the destination server, until we've authenticated with it, which requires multiple requests.
,
Apr 5 2018
Hi, Thanks for your feedback This is some URLs: - https://www.parisinfo.com/visiter-a-paris - https://en.parisinfo.com/ - https://www.amazon.com/Paris-English-subtitled/dp/B01GKTHOPS When we are behind a proxy, chrome.webRequest.onHeadersReceived received proxy headers instead of server headers. There is no call to onAuthRequired or to onBeforeRedirect listeners. chrome.webRequest.onCompleted is called with correct headers.but at this stage, we could not modify headers list.
,
Apr 5 2018
Thank you for providing more feedback. Adding the requester to the cc list. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Apr 9 2018
khalid.rfk@ - Could you please provide a sample chrome.webRequest.onHeadersReceived API extension file to test the issue from TE-end. This will help us in triaging the issue further. Thanks...!!
,
Apr 11 2018
Of course Please append the attached crx file to your chrome (see source in zip file) and click on its icon. This will execute call to test URLs, and show received headers Note that the problem is when the network is configured with a proxy (blue coat as example) Thanks.
,
Apr 11 2018
Thank you for providing more feedback. Adding the requester to the cc list. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Apr 27 2018
khalid.rfk@ Thanks for the update. As per comment #7, as this issue is observed only only proxy. This setup is not available at TE end to test further. Hence adding Internals>Network>Proxy component and TE-NeedsTriageHelp label for further help in triaging. Thanks..
,
May 1 2018
In this case you are using a connection-based proxy auth scheme (negotate/ntlm). The expected behavior is that chrome.webRequest.onHeadersReceived() should get called at least twice per request -- once with the headers you noted for the auth challenge, and then subsequently with the target server's response headers. Can you confirm that you are only getting the first call and never the second? If so that sounds like a bug with the webRequest integration and and not notifying headers following a transaction restart for auth. This should be straightforward for a triager to reproduce using a simple proxy server with NTLM.
,
Sep 3
Yes, we should get call twice, but we receive only the first call, the second is never called |
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by krajshree@chromium.org
, Apr 3 2018