我试图打印一个由jspdf生成并加载到iframe的pdf,但我收到了错误消息:
DOMException:阻止源为“http://localhost:8084”的帧访问跨源帧。
这是我的代码:
<iframe id="pdf-prueba" name="pdf-box"></iframe>
function open(){
var pdf = new jsPDF('p', 'mm', [55, 5]);
var data = pdf.output('datauristring');
$('#pdf-box').attr("src", data).load(function(){
document.getElementById('pdf-box').contentWindow.print();
});
}
DOMException:阻止了具有原点的帧“http://localhost:8084“访问交叉原点框架。”
此消息是有效的,因为当您使用pdf加载iframe时,您使用datauristring而不是blob设置src属性。
一个简单的解决方案基于:
使用您的方法违反了该策略,因为协议(http/data)不同:
另一个错误是:
document.getElementById('pdf-box')
您必须使用id而不是名称,因此请将其更改为:
document.getElementById('pdf-prueba')
以下更改的代码在Chrome中有效:
function open(){
var pdf = new jsPDF('p', 'mm', [55, 5]);
var blobPDF = pdf.output('blob');
var blobUrl = URL.createObjectURL(blobPDF);
$('#pdf-prueba').attr("src", blobUrl).load(function(e){
document.getElementById('pdf-prueba').contentWindow.print();
});
}
<iframe id="pdf-prueba" name="pdf-box"></iframe>
我知道有很多类似的问题,唯一的区别是我从同一个**域得到了两个页面。这可以在下面的例子中看到。 这不应该只在不同的域之间发生吗? ================================================================================== 当然,在我发布几秒钟后,我发现了问题。SCORM包有一个定位SCORM API的函数。它看起来像顶部和开
安全错误:阻止源"http://www.app.teste.com"的帧访问跨源帧。 我知道有人发过同样的帖子。但我创造这个是因为我有一个特定的问题。 这个错误发生在第一次访问时,当我按f5重新加载页面时效果很好。
我想允许用户输入他们的网址并在iframe中浏览。在他们点击确认按钮后,我将从iframe中获得网址浏览。 但我从iframe获取url后出错了 例外:com。谷歌。gwt。事件共享。雨伞异常:捕获异常:(SecurityError):阻止了具有原点的帧”http://localhost“从访问交叉原点帧。
我在一个WordPress网站上工作,网站上安装了很多WordPress插件。 wordpress网站上安装的插件具有以下选项: 当我点击“视图细节”选项时,我得到了一个空白屏幕,如下所示,但是当我在一个新的窗口或选项卡上打开时,它会起作用。 在检查控制台,我得到以下错误(当点击查看详细信息未能在同一页面上打开): 问题陈述: 我想知道我需要在wordpress中修改哪个文件来解决这个错误。这个错
所以我的问题是: 每当我尝试从我的网页(同一台机器,不同的端口)向我的HTTP服务器发出XMLHttpRequest时,我都会被此错误阻止: 为什么会发生这种情况? 示例客户端(浏览器): 示例服务器(NodeJS、HTTP库): 已解决,感谢Quentin的评论:D