这是一种远程运行javascript代码的方法
Where is a way to run javascript code remotely?
我希望能够远程运行实时代码。因此,我希望能够在机器A上运行一些任意代码然后,将其中一些代码转移到机器B上并继续在机器B上运行它。
我发现我可以通过fn.toString()
获得任何函数的源代码。
的例子:
var foo = function(a, b) { return a + b; }
console.log(foo.toString()); // prints "function (a, b) { return a + b; }"
到目前为止都很好,但是在这种情况下会发生什么呢?
var bar = (function() {
var x = 5;
return function(a) { return a + x; }
})();
console.log(bar.toString()); // prints "function (a) { return a + x; }"
在这种情况下,没有办法获得变量x
,所以我不能在远程机器上运行它。
有什么建议吗?
第二个函数返回以下字符串
的原因function(a) { return a + x; }
是因为您有一个返回上述函数的匿名函数。然后将"bar"定义为该函数,而不是匿名函数。另外,如果返回的函数是本地化的,那么就不能逐字运行它。相反,您可以使用保存它的变量"bar()",一旦它运行,它将知道x的值。
你所需要的是一个js运行程序,但AFAIK还没有(?)
应该是:你会有一台被称为"运行者"的计算机,它是一台奴隶,只等待代码被推送到它上面。另一个主计算机/进程可以访问这个从运行程序并推送要执行的代码块。
现在,据我所知,没有办法轻松地分割你的代码,只是远程运行它,但我想实现这一目标的一种方法是设置一个RPC服务器,它将获得源代码作为参数,并使用exec()
执行该服务器。例如,您可以使用JSON-RPC服务器来实现这一点。JSON- rpc客户端随后将发布代码块,客户端将结果作为JSON对象返回。
但是这只会给你返回一个JSON对象,你仍然需要序列化你的函数或代码来远程运行。然而,对于大多数人来说,它应该足够好了。我敢打赌,应该有类似lambda的无服务器服务,即使使用常规POST,也可以这样做,即您将源代码发布到此服务并在响应中获得结果。
我希望"有一天"会有一种远程工作者,而不是在"本地"运行另一个线程中的代码,一个将"远程"运行。如果你见过这样的"远程工作者",请评论一下。
- Javascript运行php文件,然后下载文件
- JavaScript运行时是如何工作的
- Javascript运行Total保持添加
- JavaScript运行时事件循环现有技术
- 当出现javascript运行时错误时会发生什么
- 使用JavaScript运行脚本
- 在gwt HTMLPanel中使用JavaScript运行Google图表
- 在从HTML表单提交时从javascript运行php
- JavaScript运行时错误:完成此操作所需的数据尚不可用
- RoR最快的javascript运行时
- Windows 8应用程序正在运行,现在得到0x800a1391-JavaScript运行时错误:'WinJS&
- 如何从 MVC4 链接调用 Javascript 方法(错误 JavaScript 运行时错误:对象不支持此操作)
- JavaScript运行后,页面在右侧被切断
- JavaScript 运行时错误仅在本地计算机上
- JavaScript 引擎和 JavaScript 运行时环境有什么区别
- 如何从javascript运行java代码
- Javascript 运行时错误:“应用程序未定义”
- 从Javascript运行PHP文件来检查在线用户:表示未登录的用户是
- JavaScript运行时错误,未定义jQuery
- MVC4和日期选择器:“;0x800a01b6-JavaScript运行时错误:对象没有't支持属性或方法