我正在将此javascript执行到Awesomium WebControl
function getImage(img) {
var canvas = document.createElement(\"canvas\");
canvas.width = img.width;
canvas.height = img.height;
var ctx = canvas.getContext(\"2d\");
ctx.drawImage(img, 0,0);
try{
var imgData=ctx.getImageData(10,10,50,50);
alert(imgData);
}catch(err){" +
alert(err);" +
}
}
现在此代码提供此警报:
错误:SECURITY_ERR:DOM异常18
现在这是一个相当常见的javascript代码。有人告诉我,如果我可以设置正确的标志,那么它可以关闭。所以代码应该是这样的:
WebCore.Initialize(new WebConfig { AdditionalOptions = new[] { "--allow-file-access-from-files" } });
这个“--allow-file-access-from-files”标志适用于Chrome。 现在有人知道这件事。建议或代码示例将受到高度赞赏。
由于
答案 0 :(得分:0)
我使用的是版本1.6.6。使用此代码:
WebCoreConfig config = new WebCoreConfig();
config.DisableSameOriginPolicy = true;
WebCore.Initialize(config, true);
答案 1 :(得分:0)
看起来这些设置已移至 WebSessionProvider : http://answers.awesomium.com/questions/819/disablesameoriginpolicy.html
注意: FileAccessFromFileURL 和 UniversalAccessFromFileURL
示例:
<Window.Resources>
<controls:WebSessionProvider x:Key="mySession" DataPath=".\Cache">
<core:WebPreferences
FileAccessFromFileURL="True"
UniversalAccessFromFileURL="True"
SmoothScrolling="True"
DefaultEncoding="iso-8859-7" />
</controls:WebSessionProvider>
</Window.Resources>
<awe:WebControl Name="webControl"
WebSession="{Binding Source={StaticResource mySession}}"
Source="file:///k:/something/index.html"
DocumentReady="webControl_DocumentReady"
></awe:WebControl>