Как запустить node .js файл через кнопку?

Ссылка скопирована
1 ответ

Я хочу запустить .js файл через html кнопку (естественно на сервере)
На одном из форумов писали такое решение:

<button id="run-button">Run Node.js File</button>    <script>    const { spawn } = require('child_process');      document.getElementById('run-button').addEventListener('click', () => {      spawn('node', ['server.js']);    });  </script>

<button id="run-button">Run Node.js File</button> <script> const { spawn } = require('child_process'); document.getElementById('run-button').addEventListener('click', () => { spawn('node', ['server.js']); }); </script>

Но у меня выдает require is not defined (конечно, я ведь пытаюсь запустить это в html файле)

Дополнительно:

Изучать матчасть.
Узнать как работает http.
Узнать разницу между клиентом (браузером) и сервером.
Узнать что такое http-сервер.

  • Может быть так?
    <script type="module">    const { spawn } = require('child_process');      document.getElementById('run-button').addEventListener('click', () => {      spawn('node', ['server.js']);    });  </script>

    <script type="module"> const { spawn } = require('child_process'); document.getElementById('run-button').addEventListener('click', () => { spawn('node', ['server.js']); }); </script>

  • Максим, серьёзно?
  • WbICHA, для чего спорить со мной?
    Напишите свою версию вашего решения..
  • Максим, его нет, это код для ноды, а ты пытаешься запихнуть его в браузер.
  • WbICHA, тег button для nodejs?
  • Максим, а первую строку кода ты решил проигнорировать?
  • WbICHA, я про этоже и говоою...
    Я увидел тег кнопки и это означает что код исполняется в браузере но что бы исполнить nodejs в браузере нужен модуль..
    Я не профи но у меня это так работало
    Особенно это касается threejs котроый надо запустить по кнопке
  • Ответы:

    Приведённый код предназначен скорее всего для NWJS приложения или его аналогов на базе хромиума с интегрированной NodeJS. В вашем случае вам следует сделать следующее:

    1. На сервере сначала запустить веб-сервер
    2. В коде сервера создать контроллер для определенного пути, который запустит выполнение скрипта
    3. На клиенте отправить запрос по указанному пути на сервер
    Нужно решить такую задачу?

    Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

    Заказать помощь
    Лучший ответ
    1
    Елена Вебер Ответ

    Для запуска файла Node.js через кнопку на веб-странице, вам понадобится использовать серверный язык программирования, такой как PHP, чтобы обработать запрос от кнопки и выполнить нужный файл Node.js.

    Прежде всего, убедитесь, что на вашем сервере установлен Node.js. Затем создайте файл Node.js, который вы хотите запустить, например, app.js:

    // app.js
    console.log('Hello, Node.js!');

    // app.js console.log('Hello, Node.js!');

    Далее создайте файл PHP, который будет обрабатывать запрос от кнопки и запускать файл Node.js, например, index.php:

     
     
     
     
        <title>Run Node.js File</title>
     
     
     
            <button type="submit">Run Node.js File</button>

    <title>Run Node.js File</title> <button type="submit">Run Node.js File</button>

    Этот PHP файл принимает POST запрос от кнопки на веб-странице, выполняет файл Node.js с помощью функции shell_exec() и выводит результат выполнения.

    Чтобы запустить этот код, поместите файлы app.js и index.php в одну директорию на вашем сервере, затем откройте index.php в браузере и нажмите на кнопку "Run Node.js File". Результат выполнения файла Node.js будет отображен на странице.

    Убедитесь, что ваш сервер правильно настроен для выполнения PHP скриптов и имеет правильные настройки безопасности для выполнения команд shell_exec().

    Другие ответы (0)

    Пока нет других ответов. Будьте первым, кто поможет автору.

    Ответить на вопрос

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно