Вызовите скрипт Python (на машине № 1) из NodeJS(на машине № 2)

#rpc #nodejs-server

Вопрос:

Я хочу вызвать скрипт Python (присутствует на машине № 1) из приложения NodeJS (присутствует на машине № 2, которая является сервером веб-хостинга). Пожалуйста, дайте мне знать, как с точки зрения

  1. Какие пакеты должны быть установлены в приложении NodeJS (машина № 2) и какие API/RPC вызывать с определенными параметрами для передачи на машину № 1
  2. Какая служба должна быть запущена на машине № 1, чтобы машина № 1 принимала команду Invoke от машины № 2. Какие команды я выполняю для вызова скрипта Python

Примечание: Я предполагаю, что требованием для машины № 1 должен быть статический IP-адрес, на который приложение NodeJS всегда может ссылаться через статический IP-адрес.

Ответ №1:

Если вы используете ssh на своей машине1, я бы сделал это с помощью SSH. Предполагая, что вам не нужен трубопровод. Вы можете использовать spawn или exec в узле, чтобы запустить что-то вроде

сш user@10.0.0.1 «питон /path/to/script.py»

Ответ №2:

просто вы можете создать приложение flask на машине № 1 и запустить его как службу

затем, когда вы хотите вызвать функцию с машины № 2 с помощью NodeJS, вы можете отправить запрос GET или POST на машину № 1, и flask запустит нужную функцию или скрипт и вернет результат на машину № 2

https://flask.palletsprojects.com

https://nodejs.dev/learn/make-an-http-post-request-using-nodejs