我已经构建了一个WinForms应用程序,它使用CefSharp软件包来使用Chrome呈现网站。它几乎完美无缺。当我要求它导航到我们的一个内部URL时,它根本不会导航。我可以将它发送到我希望的任何其他网站,我们的网络内部或外部。我尝试使用URI类重新格式化URL字符串,使用站点中的HTML代码重定向到所需的URL,使用站点上的超链接链接到URL,执行HTTP或HTTPS,并使用和结束URL没有反斜杠。
世界上所有的Google搜索都说使用最新版本的CefSharp不会发生这种情况。我已经排除了浏览器未被初始化的问题,因为我可以导航到其他网站,并且它在100%的时间内尝试导航到所需的URL失败。我已经没想完了。我可以在应用程序之外使用Firefox或Chrome加载网站而不会出现问题,我可以使用IE但禁用兼容模式(排除.NET中的webbrowser控件)。
我正在寻找一种“强制”浏览器导航到URL的方法。
public void changeUrl(string url)
{
try
{
Uri address = new Uri(url);
url = address.AbsoluteUri;
}catch (Exception e)
{
MessageBox.Show(e.Message);
}
Control ctrl = getBrowser();
if(ctrl is WebBrowser)
{
WebBrowser ie = (WebBrowser)ctrl;
ie.Navigate(url);
}
else
{
ChromiumWebBrowser chrome = (ChromiumWebBrowser)ctrl;
chrome.Load(url);
}
}