2012-09-25 174 views
29

我想开始使用node.js开发Google Chrome扩展程序(因为我已经在node.js中编写了“文本到歌曲”脚本,并且我想将它变为Chrome扩展。 )解决这个问题最直接的方法是什么?是否可以使用node.js开发Google Chrome扩展程序?

+3

铬扩展是客户端,而node.js服务器端 – vinayr

+2

@vinayr是的,我问是否有可能安装本地node.js服务器作为Chrome扩展(可能使用NPAPI)。 –

+0

我找到了一个相关的项目(它允许使用WebKit直接从DOM访问节点模块):http://stackoverflow.com/questions/8794140/is-it-possible-to-create-desktop-applications-with -node-js –

回答

33

其实它是。看看这个Developers Live-cast。这也是我一直在寻找的,这对你有帮助。

这会将您的节点应用程序捆绑到您的浏览器中。 这里是repo

编辑:

我注意到,我这个老答案保持现在,然后让upvotes(谢谢大家)。

但现在我更使用Web应用程序,而不是捆绑您的应用程序到像Chrome网上应用店或任何许多平台的倡导者。 您可以查看谷歌的帖子herehere,指出一些方向。

在实践中我建议你开始建立与使用服务工作者和进步的东西离线功能渐进Web应用程序(PWA)。

现在网络上有大量的资源,如果你以正确的方式做到这一点,你可以提供更丰富的应用程序,可以实现更广泛的用户。

再次感谢,和良好的编码。

+0

这两个项目之间有没有关系?其中一个旨在允许在浏览器中使用CommonJS模块,另一个是尝试允许node.js与Chrome Packaged Apps互操作。 –

+1

我发现了另一个使用node-browserify创建Chrome扩展的项目,名为node-chromify:http://iceddev.github.com/blog/2012/11/05/node-js-in-chrome/ –

+2

但这不会不会将nodej的所有功能扩展。 –

8

简单的答案是否定的,除非你能找到一个方法来install node.js with an extension using NPAPI

和的NodeJS谷歌的Chrome扩展做的共同点即一对夫妇的事情,他们都理解JavaScript,他们都使用了V8 JavaScript引擎。

谷歌Chrome扩展

“谷歌Chrome浏览器扩展的小型软件程序,可以修改和增强Chrome浏览器的功能。”

要开发Google Chrome扩展程序,您应该编写一些JavaScript和/或html/css。 然后,您可以在浏览器中运行扩展程序。

如果你想供他人下载您的扩展,你将不得不提供描述您的扩展设置权限等

的NodeJS

“Node.js的是一个平台,建立在config.json文件Google Chrome的JavaScript运行时间,可轻松构建快速,可扩展的网络应用程序。“

要在nodejs中开发应用程序,您需要为web应用程序编写一些javascript和/或html/css。

如果希望他人使用你的应用程序,你启动你nodejs服务器,并监听传入的请求。

摘要

尽管有一些相似之处谷歌的Chrome扩展和中的NodeJS没有什么对方。除了正常的客户端/服务器通信之外,您不能以某种特殊方式将它们一起使用。

+0

你确定使用Chrome扩展程序安装本地Web服务器(或其他插件)是不可能的?本主题提供了一些有关使用NPAPI使用浏览器扩展安装本地Web服务器的详细信息:http://stackoverflow.com/questions/5053244/is-it-possible-to-embed-a-http-server-in- a-google-chrome-extension –

+0

基本上,我正在尝试创建一个可以在用户计算机上安装Web服务器的Chrome扩展。 (也许这可以通过调用Chrome扩展中的shell命令完成,例如,在Ubuntu上:sudo apt-get install package-to-install)。 –

+0

不可以.Google Chrome不会允许这样做。这将打开一个巨大的安全问题。唯一的方法是让用户在Chrome之外安装实际的程序。 Chrome扩展程序已被沙盒化,无法执行“sudo apt-get install安装包名称”之类的操作。 – saeed

相关问题