Вместо этого я пытался использовать GetResourceHandler, но это не помогло. поддержка async, что сильно повлияет на скорость. Я также пытался переопределить часть загрузки CEFSharp, но это тоже не сработало. Пытался поискать в сети, но похожего вопроса нет. Вот код, который у меня есть сейчас:
Код: Выделить всё
public class CustomRequestHandler : CefSharp.Handler.RequestHandler
{
protected override bool OnBeforeBrowse(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IRequest request, bool userGesture, bool isRedirect)
{
return false; // Allow navigation
}
protected override IResourceRequestHandler GetResourceRequestHandler(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IRequest request, bool isNavigation, bool isDownload, string requestInitiator, ref bool disableDefaultHandling)
{
return new CustomResourceRequestHandler();
}
}
public class CustomResourceRequestHandler : ResourceRequestHandler
{
private const string proxyURL = "https://online-proxy-with-client-app.yang2906455468.workers.dev/"; // for demo only
protected override CefReturnValue OnBeforeResourceLoad(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IRequest request, IRequestCallback callback)
{
if (!request.Url.StartsWith(proxyURL))
{
request.Url = proxyURL + request.Url;
}
Console.WriteLine(request.Url);
//new CefSharp.UrlRequest(request, new CustomUrlRequestClient());
return CefReturnValue.Continue; // Continue with the request
}
}
Подробнее здесь: https://stackoverflow.com/questions/786 ... al-request