我有一个网站和一个谷歌浏览器扩展。该扩展使用NaCl API(JavaScript)从用户计算机写入/读取文件(C++)。如何在我的网站中使用Chrome扩展功能(NaCl)?
我的问题是:我可以加载我的扩展到我的网站,例如,在一个iFrame中,并保持其功能?
我试过这样做,但它只加载扩展“可视”部分。写/读(NaCl)功能不起作用。
一个例子,以更好地解释什么是我想要做的:
它的实际工作是这样的:
我想这样做:
或者这是另一种方式,但我认为这是不可能的,是吗?
这可能吗?我该怎么做?
编辑
下面是代码:
manifest.json中我把这个:
"externally_connectable": {
"matches": ["http://www.example.com/index.html"]
},
"web_accessible_resources": [
"/*"
],
"content_scripts" : [
{
"matches" : ["http://www.example.com/index.html"],
"js": ["index.js"]
}
],
我的网站的iframe:
<iframe src="chrome-extension://myextensionid/index.html"></iframe>
在我的扩展index.js文件中,只有两个按钮。它们的功能(JavaScript)与.cc文件(通过NaCl)通信以在计算机上的文件中保存或加载字符串。
正如我所说的,扩展工作正常,但是当我尝试通过iframe将其加载到我的网站时,它只加载html(可视化)。只要JS用NaCl调用C++函数,JavaScript就不会加载,因此也不会加载C++。
任何解决方案?
图形可以帮助别人,但我无法解析它。为什么不发布代码示例,以便其他人可以重现您所看到的问题? – sowbug
@sowbug - 我更新了我的问题。 – Dehumanizer
您是否尝试在content_scripts中添加“all_frames”:true? –