c++ - 是否可以在 Google Chrome 扩展程序中嵌入 HTTP 服务器?

标签 c++ google-chrome node.js google-chrome-extension

您认为可以在 Google Chrome 扩展程序中嵌入 HTTP 服务器吗?

我见过其他 Google Chrome 扩展程序执行 native 代码,显然他们是通过使用 NPAPI 来实现的。 ,但我不知道那是什么。这真的把我吓坏了,因为我不是 C++ 专家或类似的专家。所以我现在感觉有点卡住了,这就是我寻求帮助的原因。

具体来说,我想为 Chrome 创建一个扩展,其功能类似于 Opera Unite .对于那些不知道我在说什么的人:Opera Unite 基本上是一个与浏览器捆绑在一起的零配置 Web 服务器。我不想将它用于 Opera 所做的相同事情,但我喜欢这个概念。

我正在考虑使用 node.js 之类的东西在浏览器内部创建一个简单的 Web 界面来控制浏览器中的一些东西。将其视为浏览器的 Remote 。如果无法使用 node.js,我想使用 lighthttpd或类似的东西。只要它允许我通过 HTTP 接收命令,这项技术真的无关紧要。

但是如何利用现有的 Web 服务器并从中制作 NPAPI 插件?

澄清:我希望任何浏览器都能够与我的扩展程序通信。特别是我希望像 Android 或 iPhone 这样的移动设备能够远程控制浏览器。除了 HTTP 服务器,还有其他方法可以实现吗?

另一个更新:我认为最简单的方法是使用网络上的中继服务器,例如 Pusher或者一些自创的服务。但我不喜欢这种方法,因为它需要持续访问互联网,而且它是一项付费服务​​。

谢谢大家!

最佳答案

如果你想为浏览器做一个远程控制,像 HTML5 WebSockets 这样的东西对你有用吗?

http://www.html5rocks.com/tutorials/websockets/basics/

您可以拥有一个外部“远程”服务器,您的扩展程序通过 WebSockets 监听该服务器。如果您想通过扩展托管网络服务器。您需要使用 NPAPI,那里有许多 C++ 库(谷歌搜索)可以做一个简单的网络服务器。但我宁愿使用 WebSockets 与外部服务器通信,该服务器将为您提供任何您想要的东西。

但是如果你坚持,你需要学习C++,NPAPI,网上有很多关于NPAPI的例子。

关于c++ - 是否可以在 Google Chrome 扩展程序中嵌入 HTTP 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5053244/

相关文章:

c++ - 应用程序终止 C++ - 内存问题?

javascript - 从 localStorage 获取值以在 popup.html 中使用

html - Chrome 无法在 View 源 ://after update to v87. 0.4280.67 中自动换行

javascript - node.js + sequelize + 顺序执行

node.js - 当电子邮件存在时显示来自 Facebook 策略的连接闪现消息

c++ - 模板是否具有范围或范围之类的东西

c++ - SSE 添加比 + 运算符慢

c++ - 子类数据的父类(super class)设置对象

google-chrome - Windows 10 中的 Google Chrome 路径

javascript - 几乎所有地方都可以使用 async/await 吗?