Exemplo n.º 1
0
        //
        // Summary:
        //     Called before a resource request is loaded. For async processing return CefSharp.CefReturnValue.ContinueAsync
        //     and execute CefSharp.IRequestCallback.Continue(System.Boolean) or CefSharp.IRequestCallback.Cancel()
        //
        // Parameters:
        //   frame:
        //     The frame object
        //
        //   request:
        //     the request object - can be modified in this callback.
        //
        //   callback:
        //     Callback interface used for asynchronous continuation of url requests.
        //
        // Returns:
        //     To cancel loading of the resource return CefSharp.CefReturnValue.Cancel or
        //     CefSharp.CefReturnValue.Continue to allow the resource to load normally.
        //     For async return CefSharp.CefReturnValue.ContinueAsync
        public CefReturnValue OnBeforeResourceLoad(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, IRequestCallback callback)
        {
            // if referer given
            var tab = myForm.GetTabByBrowser(browserControl);

            if (tab != null && tab.RefererURL != null)
            {
                // Set referer
                request.SetReferrer(tab.RefererURL, ReferrerPolicy.Always);
            }

            return(CefSharp.CefReturnValue.Continue);
        }
Exemplo n.º 2
0
        //
        // Summary:
        //     Called on the CEF IO thread before a resource request is loaded. To redirect
        //     or change the resource load optionally modify request. Modification of the request
        //     URL will be treated as a redirect
        //
        // Parameters:
        //   chromiumWebBrowser:
        //     The ChromiumWebBrowser control
        //
        //   browser:
        //     the browser object - may be null if originating from ServiceWorker or CefURLRequest
        //
        //   frame:
        //     the frame object - may be null if originating from ServiceWorker or CefURLRequest
        //
        //   request:
        //     the request object - can be modified in this callback.
        //
        //   callback:
        //     Callback interface used for asynchronous continuation of url requests.
        //
        // Returns:
        //     Return CefSharp.CefReturnValue.Continue to continue the request immediately.
        //     Return CefSharp.CefReturnValue.ContinueAsync and call CefSharp.IRequestCallback.Continue(System.Boolean)
        //     or CefSharp.IRequestCallback.Cancel at a later time to continue or the cancel
        //     the request asynchronously. Return CefSharp.CefReturnValue.Cancel to cancel the
        //     request immediately.
        public CefReturnValue OnBeforeResourceLoad(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IRequest request, IRequestCallback callback)
        {
            // if referer given
            var tab = myForm.GetTabByBrowser(chromiumWebBrowser);

            if (tab != null && tab.RefererURL != null)
            {
                // Set referer
                request.SetReferrer(tab.RefererURL, ReferrerPolicy.ClearReferrerOnTransitionFromSecureToInsecure);
            }

            return(CefSharp.CefReturnValue.Continue);
        }