我的问题非常像Proper way to listen as TCP server in Chrome extension
但问题是上面的问题没有得到妥善回答,问题仍然存在。
那么,有没有办法让Chrome应用与Chrome扩展程序进行互动。目的很像上面提到的问题,简历是用于构建TCP服务器和管理标签网页中的内容。
据我所知,由于Chrome应用无法访问网页内容,因此Chrome浏览器不允许使用套接字。
所以欢迎任何想法。提前谢谢。
答案 0 :(得分:1)
尽管被称为"cross-extension messaging",但它可以在扩展程序和应用程序之间运行。
据推测,你需要长期的联系;然后你可以使用:
// In one app/extension that initiates the connection
// (Probably the app upon a new client connecting)
var port = chrome.runtime.connect(secondID);
// In other app/extension
chrome.runtime.onConnectExternal.addListener(function(port) {
port.onMessage.addListener(function(msg) {
// See other examples for sample onMessage handlers.
});
});
请记住,您要确保连接来自您信任的内容。虽然不完美的防御,你应该检查发起人的扩展名/应用程序ID - 无论是在你的代码中还是用externally_connectable
清单键过滤掉其余部分(默认是允许的)。