pacificIT / chromiumembedded

Automatically exported from code.google.com/p/chromiumembedded
0 stars 1 forks source link

CEF3: Fix problems with proxy handling #600

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Using cef_binary_1.1025.607_windows.
I'm trying to make cef use a custom proxy. First I'm checking the feature with 
CefClient sample application (specifying the suitable command line arguments).
GetProxyHandler() is called but GetProxyForUrl() is never called, as a 
consequence web content is not successfully loaded (Error -137).

Original issue reported on code.google.com by m51galax...@gmail.com on 21 May 2012 at 11:15

GoogleCodeExporter commented 9 years ago
Related CEF Forum thread: http://magpcss.org/ceforum/viewtopic.php?f=6&t=831

Original comment by magreenb...@gmail.com on 22 May 2012 at 6:24

GoogleCodeExporter commented 9 years ago
This problem only occurs when "Automatically detect proxy settings" is 
unchecked under Internet Options. ProxyConfigServiceWin::GetCurrentProxyConfig 
is used to retrieve the system configuration and results in a call to 
ProxyService::InitializeUsingLastFetchedConfig. The proxy resolver is never 
called because fetched_config_.HasAutomaticSettings() returns false. To fix 
this problem it will likely be necessary to create a custom ProxyConfigService 
in browser_request_context.cc instead of using the 
ProxyService::CreateSystemProxyConfigService method.

Original comment by magreenb...@gmail.com on 22 May 2012 at 6:50

GoogleCodeExporter commented 9 years ago
This Issue is not fixed in CEF3 :( 
(3.1180.719)

Original comment by captainc...@Safe-mail.net on 30 Aug 2012 at 8:28

GoogleCodeExporter commented 9 years ago
I've been viewing the code and it seems that no more than 10 lines of code are 
required to fix this (in CEF 1), yet the testing and compilation can take some 
time. There is already a null implementation of ProxyConfigServiceNull that can 
be reused. 

I am thinking about introducing a new option to CefSettings: 
"ignore_ie_proxy_settings", so that ie proxy settings can be ignored completely 
- would that be fine Marshall?

Original comment by czarek.t...@gmail.com on 24 Sep 2012 at 8:03

GoogleCodeExporter commented 9 years ago
@comment#4: If you use ProxyConfigServiceNull then all proxy settings will be 
ignored, including any user-specified proxy settings. I think the original 
parent wants to ignore IE proxy settings while also specifying alternate proxy 
settings.

Original comment by magreenb...@gmail.com on 24 Sep 2012 at 8:13

GoogleCodeExporter commented 9 years ago
Yes, the plan is to 1) allow to ignore ie proxy settings 2) ignore ie proxy 
settings and allow to use a custom proxy.

Maybe I misread the code and thought that I could use ProxyConfigServiceNull 
while still providing custom proxy support. So it seems there will be more code 
to write.

Original comment by czarek.t...@gmail.com on 24 Sep 2012 at 9:03

GoogleCodeExporter commented 9 years ago

Original comment by magreenb...@gmail.com on 3 Oct 2012 at 6:00

GoogleCodeExporter commented 9 years ago
Issue 690 has been merged into this issue.

Original comment by magreenb...@gmail.com on 3 Oct 2012 at 8:05

GoogleCodeExporter commented 9 years ago

Original comment by magreenb...@gmail.com on 3 Oct 2012 at 8:05

GoogleCodeExporter commented 9 years ago
Please FIX it so that each instance of CEF3 can have each own proxy 
configuration. I know this is possible Firefox has this built in for ages.

Original comment by david.lo...@gmail.com on 22 Nov 2012 at 1:32

GoogleCodeExporter commented 9 years ago
By each instance i ment. Eech instance that is hosted in the Exe. Currently you 
can only have 1 proxy per process.

Original comment by david.lo...@gmail.com on 22 Nov 2012 at 1:48

GoogleCodeExporter commented 9 years ago
Still no fix for this?! We need proxys!

I don't know why this issue isn't looked

Original comment by david.lo...@gmail.com on 30 Nov 2012 at 3:32

GoogleCodeExporter commented 9 years ago
Patches are welcome. Otherwise, stop spamming the issue tracker.

Original comment by magreenb...@gmail.com on 30 Nov 2012 at 3:38

GoogleCodeExporter commented 9 years ago
just a idea: would it not be easier if there would be a new procedure which 
allows to set a proxy directly and ignore everything else? 

For example: Loadwithurl(url,proxyip:proxyport). And then CEF would load only 
this url and all elements on the site with the specified proxy.

And all the complicated things like automatic proxy detection/wininet etc would 
not be a problem.

I think this would be enough for most of the CEF Users

Original comment by captainc...@Safe-mail.net on 28 Dec 2012 at 9:30

GoogleCodeExporter commented 9 years ago
Oh, come on this is miserable: just fix it.

Original comment by mailtoA...@gmail.com on 24 Jan 2013 at 11:19

GoogleCodeExporter commented 9 years ago
CEF3 trunk revision 1080 and CEF3 1364 branch revision 1081 introduce the 
Chrome proxy implementation based on command-line flags. See 
http://www.chromium.org/developers/design-documents/network-settings#TOC-Command
-line-options-for-proxy-settings for usage instructions. Note that command-line 
flags can also be set via CefApp::OnBeforeCommandLineProcessing().

The default proxy implementation uses Chromium's network stack to fetch and V8 
to evaluate PAC scripts. Specify the "--winhttp-proxy-resolver" command-line 
flag to use the WinHTTP implementation instead. The WinHTTP implementation will 
also be used when running in single-process mode.

It will not be possible to implement this functionality for CEF1 given the 
single-process architecture limitations.

Original comment by magreenb...@gmail.com on 6 Feb 2013 at 9:00

GoogleCodeExporter commented 9 years ago
The original problem in this issue (GetProxyForUrl() not called in all cases) 
has been moved to issue #918.

Original comment by magreenb...@gmail.com on 20 Mar 2013 at 9:38