Я создаю сервер, который извлекает данные JSON из каталога и анализирует их в файл, который можно прочитать во внешнем интерфейсе с помощью $ .getJSON ().У меня вопрос, как мне обновить данные в файле переднего плана и увидеть их обновление в самом файле?
Я пытался использовать метод post ajax, но получаю ошибку 404.Я обнаружил, что мне нужно написать «конечную точку» для указания URL-адреса ajax.Куда мне положить этот файл конечной точки Javascript / как мне записать его в экспресс
Код сервера:
const express = require('express');
const fs = require('fs');
const app = express();
var cors = require('cors');
var curl = require('curl');
var jsdom = require('jsdom');
app.use(cors());
app.use(express.static('public'));
app.set('view engine', 'ejs');
app.listen(3030, function () {
console.log('Example app listening on port 3030!')
})
// Document
var dirBuf = Buffer.from('public/assets/jsonfiles')
fs.readdir(dirBuf, (err, files) => {
if (err) {
console.log(err.message);
}
else {
var all = [];
//files
files.forEach(function(filename) {
var txt = fs.readFileSync('public/assets/jsonfiles/' + filename);
var filecontents = JSON.parse(txt)
all = (all.concat(filecontents));
})
var back = JSON.stringify(all, null, 2)
/* UNCOMMENT TO CREATE FRONT END FILE */
// fs.writeFileSync('public/assets/frontEndJSON/allrequests.json', back)
}
});
app.post('/', function (req, res) {
fs.writeFileSync('public/assets/frontEndJSON/allrequests.json', req.body)
})
app.get('/', function (req, res) {
res.render('index')
});
Код Javascript внешнего интерфейса (запросы ajax):
var back = JSON.stringify(q.items, null, 2)
$.ajax({
type: 'POST',
url: 'public/assets/js/controller.js',
data: back,
dataType: 'json'
})
}
Моя файловая структура выглядит следующим образом:
-project-folder
-public
-assets
-FronendFiles
-json file I read from and want to update
-js
-main.js
-server.js