使用Javascript生成Python进程
我的目标是运行用户将在网站上编写的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
spawn()
可以做到这一点
var process = spawn('python',["./script.py"] );
然而,我不希望用户将其代码存储在文件中,而是希望直接执行其代码。我想把他们的代码当作一个字符串,然后像这样做
var process = spawn('python',pythonCodeString );
此方法显然不起作用,因为spawn()
将文件路径作为参数。使用js执行用户的python代码还有其他方法吗
另外,我正在制作一个网站,人们可以使用python代码编辑图像。例如,用户上传图像并希望将其更改为灰度(所有这些转换用户都可以使用python进行)您可以从输入的python代码/字符串自动创建.py文件,然后使用spawn()调用它,并在执行后将其删除,就像“临时”脚本一样,这样用户就不需要手动将其存储在文件中。但是服务器上不会充斥着这些文件吗?如果在执行后小心地删除它们,就不会了。尽管如此,我还是建议不要让客户端直接执行这样的脚本,因为这可能会导致潜在的任意代码执行威胁。