javascript - Node.js:如何在列表中显示响应数据

标签 javascript mysql node.js server

我对 Node.js 非常陌生,我想在页面上显示我作为响应得到的数据。现在我可以在控制台上获得输出。 有什么可行的方法吗?

获取请求:

app.get('/bestell_uebersicht', (req, res) => {

    var orderinfo;
    var payed = "1";
    var i;
    res.send(req.session.user_id);
    console.log("User_id" + req.session.user_id);

    var sql = "SELECT * FROM CineTickets WHERE UID ='" + req.session.user_id + "' AND payed = '" + payed + "'";
    db.query(sql, (err, result) => {
        if(err) throw err;
        for(i = 0; i < result.length; i++){
        console.log("Saal: " + result[i].CinemaAuditorium + " Datum Film:" + result[i].dateOfFilm + " Film:" + result[i].nametimeOfFilm + " Platznummer: " + result[i].placeno  + " Kosten: " +  result[i].cost + "€");
        orderinfo = "Saal: " + result[i].CinemaAuditorium + " Datum Film:" + result[i].dateOfFilm + " Film:" + result[i].nametimeOfFilm + " Platznummer: " + result[i].placeno  + " Kosten: " +  result[i].cost + "€";

        res.send(`
        <p>Hier ist eine Bestellübersicht über ihr angefordertes Kinoticket</p>
        <h3>Kinoticket-Cinestar</h3>
        <ul>
            <li>${orderinfo}</li>
        </ul>
        `);
        }
    });
});

错误:

express deprecated res.send(status): Use res.sendStatus(status) instead app.js:643:9
User_id1
_http_server.js:194
    throw new RangeError(`Invalid status code: ${originalStatusCode}`);
    ^

RangeError: Invalid status code: 1
    at ServerResponse.writeHead (_http_server.js:194:11)
    at ServerResponse.writeHead (/home/umut/Schreibtisch/serveranw_Kinoreservierung/node_modules/on-headers/index.js:44:26)
    at ServerResponse._implicitHeader (_http_server.js:185:8)
    at ServerResponse.end (_http_outgoing.js:754:10)
    at writeend (/home/umut/Schreibtisch/serveranw_Kinoreservierung/node_modules/express-session/index.js:262:22)
    at Immediate.onsave [as _onImmediate] (/home/umut/Schreibtisch/serveranw_Kinoreservierung/node_modules/express-session/index.js:336:11)
    at runCallback (timers.js:794:20)
    at tryOnImmediate (timers.js:752:5)
    at processImmediate [as _immediateCallback] (timers.js:729:5)

最佳答案

从我理解你的意图的方式来看,你的代码应该如下所示

app.get('/bestell_uebersicht', (req, res) => {

    var orderinfo;
    var payed = "1";
    var i;
    res.send(req.session.user_id);
    console.log("User_id" + req.session.user_id);

    var sql = "SELECT * FROM CineTickets WHERE UID ='" + req.session.user_id + "' AND payed = '" + payed + "'";
    db.query(sql, (err, result) => {
        if(err) throw err;
        var htmlStr = `
            <p>Hier ist eine Bestellübersicht über ihr angefordertes Kinoticket</p>
            <h3>Kinoticket-Cinestar</h3>
            <ul>`;
        for(i = 0; i < result.length; i++){
            console.log("Saal: " + result[i].CinemaAuditorium + " Datum Film:" + result[i].dateOfFilm + " Film:" + result[i].nametimeOfFilm + " Platznummer: " + result[i].placeno  + " Kosten: " +  result[i].cost + "€");
            orderinfo = "Saal: " + result[i].CinemaAuditorium + " Datum Film:" + result[i].dateOfFilm + " Film:" + result[i].nametimeOfFilm + " Platznummer: " + result[i].placeno  + " Kosten: " +  result[i].cost + "€";

            htmlStr += `<li>${orderinfo}</li>`;
        }
        htmlStr += "</ul>";

        res.send(htmlStr);
    });
});

关于javascript - Node.js:如何在列表中显示响应数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57642914/

相关文章:

java - 在 Java 或 JavaScript 中显示日期名称为星期五的月份或年份的日期?

javascript - 错误: opencv4nodejs linux for missing module

node.js - 蒙戈/ Mongoose : cleanup orphaned refs

javascript - 有没有办法捕获警报确定按钮单击事件?

javascript - 删除导航链接上的事件类

javascript - 更改 iframe 内元素的样式 - 跨域(我拥有第二个域)

java - JPA查询仅按日期搜索而忽略时间

php - 查询中的 ORDER BY 不适用于循环

javascript - 如何使用 ajax 帖子和数据表附加数据不起作用?

node.js - 使用 findOne 然后 save() 替换文档,mongoose