Proxy setzen für CEF Webarea

Hallo
Wir verwenden in unserer Applikation die integrierte Web-Engine (also den chromium embedded / CEF). Nun haben wir bei den Kunden oft einen Proxy am laufen, wlecher die http-Anfragen des Webclients durchschleust. In den Internet-Settings des Systems kann für die Abfragen des Webclients eine Ausnahme definiert werden. Wenn dies bei allen Kunden auf allen Clients konfiguriert werden muss, ist dies sehr aufwändig und fehleranfällig. Das CEF-Framework würde eigentlich anbieten, dass über die Kommandozeile der Proxy konfiguriert werden kann (kommandozeilenparameter --no-proxy-server). Da ich aber keine Möglichkeit sehe (vielleicht gibt es diese, sie ist aber nicht dokumentiert), wie ich dem CEF ein Kommandozeilenargument mitgeben kann, fällt dies im Moment ausser Betracht. Wie ich gesehen habe, wird bei der Initialisierung des CEF das javascript-cefInit.js (im Verzeichnis Native Components\WebViewerCEF.bundle) ausgeführt. Dort hat man aber leider keinen Zugriff auf das Proxy-Objekt des Browsers, da dieses Script im content ausgeführt wird und somit keine Berechtigung hat zum Ändern des Proxy.
Nun meine Frage: Gibt es eine Möglichkeit, dass der Proxy im CEF konfiguriert werden kann?

die Web Area unterstützt im System fest eingetragene Proxies, keine Angabe z.B. über Skript o.ä. Sie könnten aber in der OM der Web Area diese Anfragen abfangen und dann per z.B. cURL oder andere geeignete Weise den Proxy ansprechen. Bitte wenden Sie sich für weitere Fragen zu diesem Thema an die Firma Ajar unter http://www.ajar.ch/, die für Ihren Support zuständig ist.

Wir haben bei uns gerade den umgekehrten Fall. Wir möchten eine Abfrage abfangen und nicht über den Proxy laufen lassen (bei den Kunden ist oft ein Proxy vorhanden, welcher aber je nach Kunde unterschiedlich konfifuriert ist). So wie ich gesehen habe, kann ich eine Anfrage in einer Objektmethode abfangen (z.B. in “On Begin URL Loading”) und über einen anderen Mechanismus die Anfrage weiterleiten. Ich sehe aber keine Möglichkeit wie ich dann die Antwort auf diese Anfrage zurückliefern muss, damit die Webarea die Antwort erhält. Gibt es da eine Möglichkeit?

Hello Urs,

You can intercept the url with On Begin URL loading and use the 4D Command “WA Open URL” to redirect the request to a different web server which can be actually the local web Server. This way, you can build the answer you want.

Here an very basic example :

http://forums.4d.com/4DBB_Main/x_User/464/files/26023175.zip

HTH

Hello Mauricie
Thanks for your hint. Sorry that I haven’t written for so long.
Unfourtantly, the example is not working for us. Because in your example there will be a call to the address 127.0.0.1 and these call will also go through the proxy if there is a system proxy defined. We are looking for a mechanism which is bypassing the system proxy. Our problem by the customer is that we have to set an exception on the system proxy on every client.
Urs Zaugg