首页 新闻 会员 周边

ChromiumWebBrowser 跨域问题

0
[待解决问题]

在winform 使用ChromiumWebBrowser 访问线上网站,出现跨域问题,线上页面有很多这种文件引用:
<link rel="dns-prefetch" href="//i.alicdn.com">
<link rel="dns-prefetch" href="//g.alicdn.com">
<link rel="dns-prefetch" href="//assets.alicdn.com">
在网上找了一些方案:
var bset = new BrowserSettings();
bset.Plugins = CefState.Enabled;
//关于跨域限制
bset.WebSecurity = CefState.Disabled;
browser1.BrowserSettings = bset;
试了下 都不行

问题补充:

线上网站不是我这边的 文件的引用方式是不能修改的

牧人羊的主页 牧人羊 | 初学一级 | 园豆:5
提问于:2020-10-17 11:08
< >
分享
所有回答(3)
0

建议试试把引用地址开头的 // 改为 https://

<link rel="dns-prefetch" href="https://i.alicdn.com">
<link rel="dns-prefetch" href="https://g.alicdn.com">
<link rel="dns-prefetch" href="https://assets.alicdn.com">
dudu | 园豆:30994 (高人七级) | 2020-10-17 11:21

这些是别的网站的 我这边是改不了的

支持(0) 反对(0) 牧人羊 | 园豆:5 (初学一级) | 2020-10-17 11:22

@牧人羊: 如果是通过 http(s) 访问线上网站,// 不应该被解析为 file://

支持(0) 反对(0) dudu | 园豆:30994 (高人七级) | 2020-10-17 11:33

@dudu: 这个就不清楚了 跳转到这个页面显示空白,打开View Datasource

支持(0) 反对(0) 牧人羊 | 园豆:5 (初学一级) | 2020-10-17 11:52
0
E行者 | 园豆:1761 (小虾三级) | 2020-10-17 11:29

试了下 不行 老哥能私聊不 有偿解决这个问题

支持(0) 反对(0) 牧人羊 | 园豆:5 (初学一级) | 2020-10-17 11:53

@牧人羊: 这个我不是太清楚到底什么原因,你试着通过js操作dom节点,在加载完成后添加几个link,将href地址改成以http开头的试试

例如

private void Browser_LoadingStateChanged(object sender, LoadingStateChangedEventArgs e)
{
 if (e.IsLoading == false)
            {
                var frame = browser.GetBrowser().MainFrame;
                string script="";//
                frame.ExecuteJavaScriptAsync(script);
           }
}
支持(0) 反对(0) E行者 | 园豆:1761 (小虾三级) | 2020-10-17 12:52
0

换个浏览器吧~~

Captain_Li | 园豆:143 (初学一级) | 2020-10-19 14:59
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册