cefsharp中发起https请求显示(canceled)

环境: winform、c#、.netframework4.6、CefSharp.Winforms 71.0.2
部署环境:
1. 客户端为winform+cefsharp开发的,html文件是放在客户端的
2. 服务端使用.netcore开发,使用https协议,用户的是开发时候的证书,部署在了公网
问题:
1. 客户端发起ajax请求到服务端浏览器总是显示(canceled)
2. 但是访问百度的https请求又正常(https://www.baidu.com)
截图如下:
在这里插入图片描述
在这里插入图片描述
确定问题所在:
经反复试验:推测是证书的问题,因为http都是正常的,并且百度的https也是正常,也就是自己搞的证书并不被csfsharp信任!
解决问题:
添加如下几行代码,设置cefsharp忽略证书的权威性校验

static class Program
{
    /// <summary>
    /// 应用程序的主入口点。
    /// </summary>
    [STAThread]
    static void Main()
    {
		 //忽略https证书的问题
		 var settings = new CefSettings();
		 settings.CefCommandLineArgs.Add("--ignore-urlfetcher-cert-requests", "1");
		 settings.CefCommandLineArgs.Add("--ignore-certificate-errors", "1");
		 //禁止启用同源策略安全限制,禁止后不会出现跨域问题
		 settings.CefCommandLineArgs.Add("--disable-web-security", "1"); 
		 Cef.Initialize(settings);
		 //....
	 }
}

附:其他关于cefsharp的设置
https://peter.sh/experiments/chromium-command-line-switches/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jackletter

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值