Latest beta 8 gives HTTP 403 error when accessing GitHub API. I believe this problem started to happen in beta 7.
Steps to reproduce:
auto request = static_api_ptr_t<http_client>()->create_request("GET");
request->run("https://api.github.com", abort_callback_dummy());
This code results in PP::httpRequest::error exception with "Forbidden (403)" message.
Few observations:
Comparing to 1.3.17, HTTP request lacks 'Accept' and 'User-Agent' headers. The latter troubles GitHub (documentation (https://developer.github.com/v3/#user-agent-required)).
The question is: from now on, should components add 'Accept' and 'User-Agent' headers by their own if they need these headers? Or this is something that was just overlooked?
Also, even being invoked with "https://..." URL, http_request in beta 8 first performs request to "http://..." URL (in 1.3.17 it performs request directly to https://...). Is there a reason for that?
Noted, thanks for reporting - this will be fixed in the next update.
I switched to a different HTTP client implementation in 1.4 beta 7 - or more specifically, to a different fork of the same implementation.
I confirmed and fixed the two first issues: missing "Accept" and "User-Agent".
However I see no trace of plain HTTP requests made instead of HTTPS. Do you have a wireshark log of this?
It seems, HTTP requests are made when Proxy is set to 'Use Internet Explorer settings' (when it is set to 'No proxy', request goes directly to 443 port). Reproduced on clean beta 8 using 'Add location...' with https://api.github.com. Log is in attach (Fiddler). On 1.3.17 that does not happen (request goes directly to HTTPS). OS is Win 8.1 x64 with all updates.
Problem recreated, thanks for the details.
Various proxy server handling bugs are being addressed for beta 9.
New beta posted, relevant bugs should be gone.
Confirmed. All issues are resolved in beta 9. Thank you.