Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/429.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Javascript生成Python进程_Javascript_Python_Node.js_Web_Spawn - Fatal编程技术网

使用Javascript生成Python进程

使用Javascript生成Python进程,javascript,python,node.js,web,spawn,Javascript,Python,Node.js,Web,Spawn,我的目标是运行用户将在网站上编写的python代码。我发现spawn()可以做到这一点 var process = spawn('python',["./script.py"] ); 然而,我不希望用户将其代码存储在文件中,而是希望直接执行其代码。我想把他们的代码当作一个字符串,然后像这样做 var process = spawn('python',pythonCodeString ); 此方法显然不起作用,因为spawn()将文件路径作为参数。使用js执行用户的pyt

我的目标是运行用户将在网站上编写的python代码。我发现
spawn()
可以做到这一点

var process = spawn('python',["./script.py"] ); 
然而,我不希望用户将其代码存储在文件中,而是希望直接执行其代码。我想把他们的代码当作一个字符串,然后像这样做

var process = spawn('python',pythonCodeString );
此方法显然不起作用,因为
spawn()
将文件路径作为参数。使用js执行用户的python代码还有其他方法吗


另外,我正在制作一个网站,人们可以使用python代码编辑图像。例如,用户上传图像并希望将其更改为灰度(所有这些转换用户都可以使用python进行)

您可以从输入的python代码/字符串自动创建.py文件,然后使用spawn()调用它,并在执行后将其删除,就像“临时”脚本一样,这样用户就不需要手动将其存储在文件中。

但是服务器上不会充斥着这些文件吗?如果在执行后小心地删除它们,就不会了。尽管如此,我还是建议不要让客户端直接执行这样的脚本,因为这可能会导致潜在的任意代码执行威胁。