是否可以使用Chrome扩展程序在浏览器上运行Node.js模块?

4
对于我的大学项目,我正在创建一个Chrome扩展程序,用于对用户在浏览器上访问的每个URL执行某些检查和验证。我的目标是使用Chrome扩展程序在检测到可疑站点时警告用户。因此,为了实现这个目的,我需要使用某些NPM模块,如whois-jsonget-ssl-certificate等。由于Node.js不能直接在浏览器上运行,我尝试使用Browserify模块将此类Node.js代码(例如require和module执行)转换为普通的Javascript bundle文件。因此,当我尝试使用Chrome扩展程序运行此JavaScript bundle时,出现错误:

"net.connect"不是一个函数

是否有可能修复此错误?或者我能否使用其他解决方案作为Browserify的替代方案,在Chrome扩展程序上运行我的Node.js模块。


1
不,Node API在浏览器中不可用。您需要找到另一个模块,该模块使用浏览器扩展可用的内容。 - Bergi
1个回答

4

不,您无法在Chrome扩展程序中使用使用服务器特定代码的Node.js模块。但是您有几个选项。

  1. 您可以寻找使用浏览器API的替代模块,然后使用它们。

  2. 您可以寻找可实现您的Node.js模块功能的公共REST API。

  3. 您可以使用现有的Node.js代码创建自己的REST API,然后从客户端Chrome扩展程序与其进行交互。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接