У меня была та же проблема.
через несколько минут, я подумал, что я пытался загрузить файл.fxml из неправильного местоположения.
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/[wrong-path]/abc.fxml"));
fxmlLoader.setClassLoader(getClass().getClassLoader());
fxmlLoader.setRoot(this);
fxmlLoader.setController(this);
fxmlLoader.load();
В этом примере я собираюсь использовать библиотеку Express HTTP
const express = require('express');
const app = express();
const { exec } = require('child_process');
const AuthValidator = (req, res, next) => {
if(req.headers['X-Secret-Code'] === 'some_super_secret_password') return next();
return res.status(400).end('Bad Authorization');
}
app.get('/api/startservice', (req, res) => {
exec('screen && node start.js && node index.js', (error, stdout) => {
if (error) {
console.error(`Fail to start Node app: ${error}`);
return res.status(500).end(error.message);
}
res.status(201).end(stdout);
});
});
app.get('/api/stopservice', (req, res) => {
exec('node stop.js', (error, stdout) => {
if (error) {
console.error(`Fail to stop Node app: ${error}`);
return res.status(500).end(error.message);
}
res.status(201).end(stdout);
});
});
И как только клиент выполнит GET
запрос к конечной точке /api/startservice
, приложение Node поможет выполнить три из этих команд
То же самое касается /api/stopservice
, как только эта конечная точка получает триггер, приложение Node выполнит stop.js
сценарий