// // 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); }
// // 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); }