gpt4 book ai didi

java - JxBrowser 中访问 Canvas 的跨源限制

转载 作者:行者123 更新时间:2023-12-02 12:26:39 35 4
gpt4 key购买 nike

我下载了 JxBrowser,因为我想在我的电子评估应用程序中实现它,该应用程序是我用 Java Swing 为学校学生开发的。然而我面临着一个问题。我拥有的控件之一是 HTML Canvas,通过它我允许学生绘制图表,每隔几秒自动保存一次(我为此使用 wpaint.js)。以前,当我使用 Java FXBrowser 时,我能够方便地从 Canvas 中提取图像数据,但是,自从我使用 JxBrowser 后,我无法获取图像数据,而是出现以下异常。

无法在“HTMLCanvasElement”上执行“toDataURL”:可能无法导出受污染的 Canvas 。

该图像驻留在本地系统上,是学生必须尝试的问题的一部分。我认为这与跨源限制有关。但是,在这种情况下不存在跨域请求,因为应用程序和图像都是同一应用程序的一部分并且是本地访问的。 (学生无法手动选择图像,因为它是试卷的一部分,必须自动输入 Canvas 并自动保存。我需要自动保存图像数据,但由于上述异常,我没有得到该图像数据。 )。请帮忙,我现在陷入困境。

最佳答案

终于解决了。在创建我的第一个浏览器实例之前,通过输入以下 chromium 开关禁用同源策略

BrowserPreferences.setChromiumSwitches("--disable-web-security", "--allow-file-access-from-files");

感谢 JxBrowser 支持团队非常及时地帮助我。

关于java - JxBrowser 中访问 Canvas 的跨源限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45432463/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com