webkitgtk自定义方案和XMLHttpRequest

时间:2015-07-26 11:58:05

标签: javascript c webkit webkitgtk

我有一个自定义方案(“embed”),它提供来自sqlite db

的数据

虽然我能做(在嵌入计划页面内)

<img src="embed://any/old/uri/image.gif" />

如果我尝试执行XMLHttpRequests,我只能做相对路径,只有没有双点的路径似乎被剥离

有没有办法从相同的方案中获取资源而没有问题。我注意到问题(以及简单的jscript测试)与three.js和howl.js能够从同一方案中的任何地方提取资源会很好。

我试过以下

WebKitSettings *wks = webkit_web_view_get_settings (webView);
webkit_settings_set_enable_webgl (wks, TRUE);
webkit_settings_set_enable_webaudio (wks, TRUE);
webkit_settings_set_enable_xss_auditor(wks,FALSE);
webkit_settings_set_enable_hyperlink_auditing(wks, FALSE);
webkit_settings_set_enable_write_console_messages_to_stdout(wks, TRUE);

我也试过

webkit_security_manager_register_uri_scheme_as_local(wksm ,"embed");

但这似乎让事情变得更糟!我尝试了其他一些东西,但此刻似乎正在追逐自己的尾巴!

要清楚,我很乐意关闭所有“安全性”,让任何embed://资源都可以访问任何其他embed://资源,无论访问方法如何。

1 个答案:

答案 0 :(得分:1)

有趣的一个!

URI规范必须包含域

因此这是URI的第一部分

embed://demo/content/main.js
embed://demo/image/texture.jpg

将起作用(这里main.js正在访问texture.jpg)

embed://content/main.js
embed://image/texture.jpg

无效!从main.js访问texture.jpg看起来像webkit,好像内容域上的脚本正在访问图像域上的资源