我正在尝试使用“file://”域页面在 iframe中加载http://google.com 。当然,我收到“Google.com 不允许”错误。我已经尝试过反向代理,但我认为反向代理没有意义。
在那之后,我研究了几个小时关于禁用或绕过 webkit gtk 中的“跨源策略”。
我在本手册页中尝试了一些解决方案,https://webkitgtk.org/reference/webkit2gtk/stable/WebKitSettings.html
所以,我试图在 WebKitSettings 中添加这个块
WebKitSettings *settings =
webkit_web_view_get_settings(WEBKIT_WEB_VIEW(webview));
webkit_settings_set_allow_file_access_from_file_urls(settings, true);
webkit_settings_set_allow_file_access_from_file_urls(settings,true);
但它不起作用。我仍然无法在 iframe 中连接到 google.com(或任何受 cors 保护的网站)。
根据我最近的研究,Webkit GTK 手册对此有一些小技巧。它被称为财产
(允许文件访问来自文件 urls)
但我不知道如何实现我的代码。
编辑:
我在我的代码中添加了这一行
webkit_settings_set_allow_universal_access_from_file_urls(settings,true);
现在我也收到“在框架中拒绝连接,因为它将 X-Frame-Options 设置为 SAMEORIGIN”错误。我如何在 webkitgtk 中为跨源设置它?