Javascript 从html文件执行Nodejs脚本

Javascript 从html文件执行Nodejs脚本,javascript,ajax,node.js,browserify,Javascript,Ajax,Node.js,Browserify,我想从html文件执行nodejs脚本。 我正在尝试browserify,但是我遇到了很多错误,比如“http.createServer不是一个函数” 是否有browserify的替代方案?browserify的任何替代方案都不会让您做在浏览器环境中根本不可能做的事情…包括启动HTTP服务器。browserify的任何替代方案都不会让您做在浏览器环境中根本不可能做的事情…包括启动HTTP服务器服务器。无法在浏览器上启动服务器 任何正常的浏览器都不会允许这样做,因为这会导致严重的安全漏洞和攻击。在

我想从html文件执行nodejs脚本。 我正在尝试browserify,但是我遇到了很多错误,比如“http.createServer不是一个函数”


是否有browserify的替代方案?

browserify的任何替代方案都不会让您做在浏览器环境中根本不可能做的事情…包括启动HTTP服务器。

browserify的任何替代方案都不会让您做在浏览器环境中根本不可能做的事情…包括启动HTTP服务器服务器。

无法在浏览器上启动服务器


任何正常的浏览器都不会允许这样做,因为这会导致严重的安全漏洞和攻击。

在浏览器上启动服务器是不可能的


任何正常的浏览器都不会允许这样做,因为这会导致严重的安全漏洞和攻击。

您无法在客户端执行node.js脚本

事实上,这种说法并不完全正确。如果脚本只包含浏览器和node.js都可以运行的代码,或者可以检测到它运行在哪个环境中,并切换到对该环境友好的代码,那么它就可以工作。但是脚本仅限于其运行环境的功能,因此像
http.createServer()
这样的调用将无法在浏览器中运行。它没有在浏览器中定义,可能永远也不会定义。从安全角度来看,这太危险了

您可以做的是在node.js中创建一个服务器端API,并让浏览器通过AJAX调用它。提供API的脚本将在node.js中运行,因此它可以执行node.js可以执行的任何操作。但是,由于该代码没有在浏览器中运行,因此它将无法影响浏览器,除非它返回什么


我怀疑您实际上需要两个脚本,一个在服务器上,另一个在客户端上,用于相互通信。如何设置这种通信取决于您,但是如果您要启动服务器响应AJAX调用,那么您需要非常小心安全性。尽管如此,这是可行的;像这样的应用很常见。

您无法在客户端执行node.js脚本

事实上,这种说法并不完全正确。如果脚本只包含浏览器和node.js都可以运行的代码,或者可以检测到它运行在哪个环境中,并切换到对该环境友好的代码,那么它就可以工作。但是脚本仅限于其运行环境的功能,因此像
http.createServer()
这样的调用将无法在浏览器中运行。它没有在浏览器中定义,可能永远也不会定义。从安全角度来看,这太危险了

您可以做的是在node.js中创建一个服务器端API,并让浏览器通过AJAX调用它。提供API的脚本将在node.js中运行,因此它可以执行node.js可以执行的任何操作。但是,由于该代码没有在浏览器中运行,因此它将无法影响浏览器,除非它返回什么

我怀疑您实际上需要两个脚本,一个在服务器上,另一个在客户端上,用于相互通信。如何设置这种通信取决于您,但是如果您要启动服务器响应AJAX调用,那么您需要非常小心安全性。尽管如此,这是可行的;像这样的应用程序很常见