前提条件

为了实现在cefsharp里面设置代理,首先在创建一个ChromiumWebBrowser的时候,检查是否使用了以下代码

settings.CefCommandLineArgs.Add("no-proxy-server", "1");//不使用代理

在RequestHandler下,实现GetAuthCredentials

public class BaseRequestHandler : RequestHandler
{
private string _userName;
private string _password; public BaseRequestHandler(string userName, string password)
{
this._userName = userName;
this._password = password;
} public BaseRequestHandler()
{ } protected override bool GetAuthCredentials(IWebBrowser chromiumWebBrowser, IBrowser browser, string originUrl, bool isProxy, string host,
int port, string realm, string scheme, IAuthCallback callback)
{
if (isProxy == true)
{
callback.Continue(_userName, _password); return true;
} return false;
}
}

增加/卸载代理

万事俱备后,在对应的地方加上。如果想卸载掉代理, v["mode"] = "direct"; 替换即可

private async Task SetProxy(ChromiumWebBrowser cwb, string address)
{
try
{
await Cef.UIThreadTaskFactory.StartNew(delegate
{
var rc = cwb.GetBrowser().GetHost().RequestContext;
var v = new Dictionary<string, object>();
v["mode"] = "fixed_servers";
v["server"] = address;
string error;
bool success = rc.SetPreference("proxy", v, out error);
Console.WriteLine(success);
});
}
catch (Exception e)
{
//
}
}

C# Cefsharp 设置代理方法的更多相关文章

  1. webservice axis2客户端设置代理方法(公司网络通过代理访问时)

    webservice axis2客户端设置代理方法(公司网络通过代理访问时)   UploadProcessInServiceStub stub = new UploadProcessInServic ...

  2. VC设置代理方法

      参考文章: VC 设置代理 Setting and Retrieving Internet Options Change Internet Proxy settings http://suppor ...

  3. github for window 中 git shell 设置代理方法和解决ssl证书错误的问题

    体验了一下传说中的 github for windows(操作git有很多的方法,我还没有学会,所以找了个简单的方法),听说用起来还不错,毕竟也开始接触了github.下载地址是 http://win ...

  4. urllib,request 设置代理

     通常防止爬虫被反主要有以下几个策略: 1.动态设置User-Agent(随机切换User-Agent,模拟不同用户的浏览器信息) 2.使用IP地址池:VPN和代理IP,现在大部分网站都是根据IP来b ...

  5. ios开发网络学八:NSURLSession相关代理方法

    #import "ViewController.h" @interface ViewController ()<NSURLSessionDataDelegate> /* ...

  6. scrapy设置代理的方法

    方法一: 直接在spider文件下设置代理,通过传参的方式设置在Request中 import scrapy class MimvpSpider(scrapy.spiders.Spider): nam ...

  7. collectionView代理方法快速设置cell大小上下左右间隔

    #define JianGe 25 #define GeShu 4 #define ScreenWidth ([UIScreen mainScreen].bounds.size.width) #def ...

  8. 如何在android studio 1.0 启动时设置代理【解决WARN - ateSettings.impl.UpdateChecker - Connection failed.】

    今天第一次用android studio,下了个比较新的1.0.1 linux版本,结果启动时老是出现以下错误: [ 6987] WARN - ateSettings.impl.UpdateCheck ...

  9. 通读AFN②--AFN的上传和下载功能分析、SessionTask及相应的session代理方法的使用细节

    这一部分主要研究AFN的上传和下载功能,中间涉及到各种NSURLSessionTask的一些创建的解析和HTTPSessionManager对RESTful风格的web应用的支持,同时会穿插一点NSU ...

  10. UITextField的代理方法:textField:shouldChangeCharactersInRange:replacementString

    原文链接:http://www.cnblogs.com/zhanggui/p/6101813.html 这个我在开发的过程中用到的次数最多,因此这里就简单对其进行分析.先看看Command+点击 弹出 ...

随机推荐

  1. Shiro 的优点

    a.简单的身份认证, 支持多种数据源 b.对角色的简单的授权, 支持细粒度的授权(方法级) c.支持一级缓存,以提升应用程序的性能 d.内置的基于 POJO 企业会话管理, 适用于 Web 以及非 W ...

  2. 彻底解决IDEA Jrebel 错误找不到口令文件的问题

    本来我的Jrebel也是好用的,突然就变成了这个样子,网上针对这个问题有很多帖子,但是每次新建项目后我都需要去解决一下这个问题,这我不能忍,经过一整天的百度和测试终于找到了原因并解决这个问题,伸手党直 ...

  3. 调用了这么久的JS方法是长在对象、类、值本身还是原型链上?

    调用了这么久的JS方法是长在对象.类.值本身还是原型链上? JavaScript这门语言总是能带给我惊喜,在敲代码的时候习以为常的写法,退一步再看看发现自己其实对很多基操只有表面的使用,而从来没思考过 ...

  4. Mac修改文件名的颜色

    文章目录 前言 文件类型 LSCOLORS介绍 颜色 如何设置LSCOLORS环境变量 前言 Mac中修改文件名颜色是通过LSCOLORS这个环境变量来控制的 文件类型 11种文件类型信息如下所示 序 ...

  5. js中对对象经行判空

    1.for (... in ...) for(var i in obj){ return true; //如果不为空,返回true } return false; //如果为空,返回false 2.J ...

  6. 记录liunx服务器和docker时区修改

    记录服务器和docker时区修改 前言 我的博客是部署在docker里面的,然后我发现评论和留言的时间和北京时间是有差别的,相差8个小时,然后发现是因为容器中的时区设置与服务器是不一致的,所以需要设置 ...

  7. Linux 内核:设备驱动模型(6)设备资源管理

    Linux 内核:设备驱动模型(6)设备资源管理 背景 不要总是用Linux 2.6的风格来写驱动代码了,也该与时俱进一下. 参考:http://www.wowotech.net/device_mod ...

  8. HTTP 协议学习:1-HTTP概述

    背景 原文:HTTP概述 HTTP是一种能够获取如 HTML 这样的网络资源的 protocol(通讯协议).它是在 Web 上进行数据交换的基础,是一种 client-server 协议,也就是说, ...

  9. HiAI Foundation开发平台,加速端侧AI应用的智能革命

    如果您是一名开发者,正在寻找一种高效.灵活且易于使用的端侧AI开发框架,那么HarmonyOS SDKHiAI Foundation服务(HiAI Foundation Kit)就是您的理想选择. 作 ...

  10. Java 核心基础之static静态代码块和静态方法

    static静态代码块和静态方法 static关键字 static修饰的方法或变量,优先于对象执行,所以内存会先有static修饰的内容,后有对象的内容 可以用来修饰类的成员方法.类的成员变量,还可以 ...