Я пытаюсь выяснить, как передать данные клиента (в форме HTML) на серверную часть Node / Express / sqlite - не знаю, как упаковать запрос на стороне клиента и / или извлечь запрос на сервереside.
Код клиента:
// listen for the form to be submitted and add a new dream when it is
dreamsForm.onsubmit = function(event) {
// stop our form submission from refreshing the page
console.log("SUBMIT clicked!!!");
event.preventDefault();
// jeng: save the value to post
var data = {dream: dreamInput.value}; // jeng: JSON
const dreamRequest = new XMLHttpRequest();
dreamRequest.open('post', '/putDreams', true);
dreamRequest.setRequestHeader('Content-Type', "application/json;charset=UTF-8"); // jeng - after open but before send
//dreamRequest.send(JSON.stringify(data));
dreamRequest.send(data);
};
Код сервера:
// jeng: added insert a new row to the Dreams table
app.get("/putDreams", function (request, response) {
console.log("insertRows called!!");
var stmt = db.prepare("INSERT INTO Dreams VALUES (?)");
var val = request.body.dream;
//var s = JSON.parse("test")
//request.json();
console.log("1 "+request);
console.log("2 "+request.body);
console.log("3 "+request.body.dream);
//console.log("4 "+s);
//stmt.run("test"); // this works!! test is inserted
stmt.run(val); // this doesn't work - val is undefined - null is inserted
stmt.finalize();
response.redirect("/");
});
Моя конкретная потребность - просто взять фрагмент текста, введенный пользователем, и вставить егов таблицу sqlite с помощью Node / Express.Я искал везде безрезультатно до сих пор.Любые предложения / указатели будут с благодарностью.Заранее спасибо