CefSharp之三-如何获取request和response
2016-03-17 20:08
781 查看
我用的是CefSharp 47版本,其他版本会有些函数的改动。具体怎么开始使用CefSharp请看我的其他博客。
public partial class requesthandler : IRequestHandler
{
public bool GetAuthCredentials(IWebBrowser browserControl, IBrowser browser, IFrame frame, bool isProxy, string host, int port, string realm, string scheme, IAuthCallback callback)
{
throw new NotImplementedException();
}
public bool OnBeforeBrowse(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, bool isRedirect)
{
return false;
//throw new NotImplementedException();
}
public CefReturnValue OnBeforeResourceLoad(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, IRequestCallback callback)
{
//throw new NotImplementedException();
MessageBox.Show(request.Headers["User-Agent"]);//<span style="font-family: Arial, Helvetica, sans-serif;">这里弹出response</span>
return CefReturnValue.Continue;
}
public bool OnCertificateError(IWebBrowser browserControl, IBrowser browser, CefErrorCode errorCode, string requestUrl, ISslInfo sslInfo, IRequestCallback callback)
{
throw new NotImplementedException();
}
public bool OnOpenUrlFromTab(IWebBrowser browserControl, IBrowser browser, IFrame frame, string targetUrl, WindowOpenDisposition targetDisposition, bool userGesture)
{
throw new NotImplementedException();
}
public void OnPluginCrashed(IWebBrowser browserControl, IBrowser browser, string pluginPath)
{
throw new NotImplementedException();
}
public bool OnProtocolExecution(IWebBrowser browserControl, IBrowser browser, string url)
{
throw new NotImplementedException();
}
public bool OnQuotaRequest(IWebBrowser browserControl, IBrowser browser, string originUrl, long newSize, IRequestCallback callback)
{
throw new NotImplementedException();
}
public void OnRenderProcessTerminated(IWebBrowser browserControl, IBrowser browser, CefTerminationStatus status)
{
throw new NotImplementedException();
}
public void OnRenderViewReady(IWebBrowser browserControl, IBrowser browser)
{
//throw new NotImplementedException();
}
public void OnResourceLoadComplete(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, IResponse response, UrlRequestStatus status, long receivedContentLength)
{
//throw new NotImplementedException();
}
public void OnResourceRedirect(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, ref string newUrl)
{
throw new NotImplementedException();
}
public bool OnResourceResponse(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, IResponse response)
{
//throw new NotImplementedException();
MessageBox.Show(response.ResponseHeaders["Set-Cookie"]);//这里弹出response
return false;
}
}
public partial class requesthandler : IRequestHandler
{
public bool GetAuthCredentials(IWebBrowser browserControl, IBrowser browser, IFrame frame, bool isProxy, string host, int port, string realm, string scheme, IAuthCallback callback)
{
throw new NotImplementedException();
}
public bool OnBeforeBrowse(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, bool isRedirect)
{
return false;
//throw new NotImplementedException();
}
public CefReturnValue OnBeforeResourceLoad(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, IRequestCallback callback)
{
//throw new NotImplementedException();
MessageBox.Show(request.Headers["User-Agent"]);//<span style="font-family: Arial, Helvetica, sans-serif;">这里弹出response</span>
return CefReturnValue.Continue;
}
public bool OnCertificateError(IWebBrowser browserControl, IBrowser browser, CefErrorCode errorCode, string requestUrl, ISslInfo sslInfo, IRequestCallback callback)
{
throw new NotImplementedException();
}
public bool OnOpenUrlFromTab(IWebBrowser browserControl, IBrowser browser, IFrame frame, string targetUrl, WindowOpenDisposition targetDisposition, bool userGesture)
{
throw new NotImplementedException();
}
public void OnPluginCrashed(IWebBrowser browserControl, IBrowser browser, string pluginPath)
{
throw new NotImplementedException();
}
public bool OnProtocolExecution(IWebBrowser browserControl, IBrowser browser, string url)
{
throw new NotImplementedException();
}
public bool OnQuotaRequest(IWebBrowser browserControl, IBrowser browser, string originUrl, long newSize, IRequestCallback callback)
{
throw new NotImplementedException();
}
public void OnRenderProcessTerminated(IWebBrowser browserControl, IBrowser browser, CefTerminationStatus status)
{
throw new NotImplementedException();
}
public void OnRenderViewReady(IWebBrowser browserControl, IBrowser browser)
{
//throw new NotImplementedException();
}
public void OnResourceLoadComplete(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, IResponse response, UrlRequestStatus status, long receivedContentLength)
{
//throw new NotImplementedException();
}
public void OnResourceRedirect(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, ref string newUrl)
{
throw new NotImplementedException();
}
public bool OnResourceResponse(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, IResponse response)
{
//throw new NotImplementedException();
MessageBox.Show(response.ResponseHeaders["Set-Cookie"]);//这里弹出response
return false;
}
}
相关文章推荐
- codeforces/conteset/644BProcessing Queries(模拟)
- UItableView的编辑--删除移动cell
- 刷了MIUI的手机在OSX下连接USB调试的方法
- XIB中设置UITextField的高度
- IOS控件学习之UIScrollView(3)
- HDU 1005 Number Sequence
- 再也不用管UIImagePicker的代理了
- IOS控件学习之UIScrollView(2)
- 项目:BluetoothChat
- 1570: [JSOI2008]Blue Mary的旅行 最大流
- [Android M] Bluedroid修改蓝牙默认名称
- UI设计师未来的4个发展方向
- IOS控件学习之UIScrollView(1)
- iOS UIImage 异步加载 图片缓存压缩 UIImageVIew分类
- POJ 2031 Building a Space Station(最小生成树)
- Handler、Message、MessageQueue、 Looper、Handler Thread
- POJ - 2533 Longest Ordered Subsequence(最长上升子序列)
- sublime3 build3103版本 注册码 能用最新
- easyui validatebox 验证类型
- The project 'FeiYueXueTang_Android' may be using a version of Gradle that does not contain the metho