我已经编写了自己的ResourceHandler。 ProcessRequest()工作asynchrone。将CefSharp从43(WPF)更新为49(WinForms)后,我遇到了一些IRequest.IsDisposed问题。
似乎在我的任务启动之前处理了请求。如果请求被处理,我就无法访问帖子数据。
public class MySchemeHandler : IResourceHandler {
// ...
public bool ProcessRequest(IRequest request, ICallback callback) {
// copy request???
Task.Run(() => {
try {
if (request.IsDisposed == true) // Copy post data before Task.Run()???
throw new ExpressDisposedException();
// ...
// Process(request, callback);
} catch(Exception ex) {
callback.Cancel();
} finally {
callback.Dispose();
}
});
return true;
}
}
有没有办法避免处理IRequest。是一个完整的例子,如何使它更好。