我一直在寻找所有地方,但我无法从file://
网址加载CefSharp。上班。这就是我现在所拥有的。
BrowserSettings browserSettings = new BrowserSettings();
browserSettings.FileAccessFromFileUrlsAllowed = true;
browserSettings.UniversalAccessFromFileUrlsAllowed = true;
browserSettings.DeveloperToolsDisabled = false;
this.webview = new WebView("http://google.com", browserSettings);
如您所见,我将FileAccessFromFileUrlsAllowed
和UniversalAccessFromFileUrlsAllowed
设置为true。
我正在尝试使用Javascript将本地图像添加到DOM:
this.webview.ExecuteScript(@"
var img = document.createElement('img');
img.setAttribute('src','file:///C:/test.jpg');
document.getElementsByTagName('body')[0].appendChild(img);
");
它不起作用;当我打开开发人员控制台时,会弹出此错误
Not allowed to load local resource: file:///C:/test.jpg
我一直在努力解决这个问题,提前谢谢。
答案 0 :(得分:0)
请参阅此CefSharp Google论坛主题中的问与答:https://groups.google.com/d/msg/cefsharp/4gxmKwrhDSU/V71BSQdEroMJ
答案 1 :(得分:0)
在我的解决方案帮助其他人的情况下回答一个相当古老的问题。
我遇到了类似的问题,“不允许加载本地资源:”我相信我已经正确设置了所有内容。我终于意识到我的一些文件没有被复制到构建输出目录,因为在Visual Studio中没有正确配置我的项目。添加html,js等文件后,我忘了在文件'Copy to Output'='Copy if newer'上设置属性。错误消息有点误导,因为问题是由于找不到文件。
答案 2 :(得分:0)
一个很老的问题,但是它只是发生在我身上,我想出了一个解决方案。以防万一它可以帮助某人,如果您添加下一行,则可以加载本地资源:
browserSettings.LocalStorage = CefState.Enabled;