javascript - 如何从 Nuxt.js SPA 运行 Python 脚本?

标签 javascript python node.js nuxt.js

我目前正在开发 Nuxt.JS SPA。其中一项功能是从云存储上传、下载和删除文件。我已经使用 Google 的 Firebase 产品和 API 成功完成了此操作,因为 Google 在 Node.JS 中拥有它。

现在我必须将存储更改为 Ceph 存储。问题是,我必须使用 Ceph 的对象网关 S3 API 来完成此操作。但是,Ceph 在 JS、Node.JS 等中没有这个功能。我可以使用 Python 来实现它们,并且我已经创建了可以做到这一点的 Python 脚本。

现在,我必须以某种方式从我的 SPA 调用这些 Python 脚本,并在单击按钮时运行它们。我知道可以使用 child_process 或 NPM 模块(例如使用 child_process 的 python-shell)从 Node.JS 或 Javascript 调用 python 脚本,这样的东西对我来说是理想的选择。

问题是,因为它是 SPA 并且主要是客户端,所以我无法使用子进程,因为它显然是服务器端的(我已经尝试过它们,但我不断收到“无法解析 child_process”错误)。因此,另一个问题( How to call a Python function from Node.js )中提供的解决方案对我不起作用。

除了使用 AWS Lambda 或类似解决方案之外,我还可以尝试解决此问题吗?还有其他替代方案或解决方案吗?或者我只是毫无意义地用头撞墙?

我是 Node.JS、Nuxt 等方面的新手,所以如果我写了一些无意义的东西,我很抱歉。

最佳答案

您需要为您的 python 脚本创建一个 http(最简单)api。

因此,您的 SPA 会将 http 请求发送到您的 python 脚本,然后 python 脚本完成工作。是的,您需要某种服务器或 lambda 或其他任何东西来实现此目的。

关于javascript - 如何从 Nuxt.js SPA 运行 Python 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53947241/

相关文章:

javascript - 与对象进行 Angular 异步调用?

python - 如何格式化 python 记录器的默认消息

javascript - sh : 1: tailwind: not found when deploying to heroku

javascript - array() 函数返回一个对象

javascript - 公开函数并返回对象

javascript - 为什么该代码返回 10 而不是 5?

jquery - 使用 Django/Python 将批量 .csv 数据上传到 webapp 的好方法是什么?

python - 将数据帧转换为元组列表

javascript - 如何使用 mongoose 保存嵌套的 mongoDB 属性?

javascript - 使用外部内容 Bootstrap 3 清除模态