gpt4 book ai didi

javascript - Node Js、javascript、mysql,客户端看到/看不到什么?

转载 作者:行者123 更新时间:2023-11-28 19:25:55 24 4
gpt4 key购买 nike

我必须为一个大学元素做一个必须在桌面浏览器和移动设备上运行的网络应用程序。我必须使用 HTML/CSS/JavaScript/Node/MySQL 来完成。我现在了解 node.js 是什么,据我所知,它就像一个 apache,当客户端请求某些东西时响应发送 HTTP 数据包。我也添加了 Node Express 并实现了 MySQL。现在我制作了一个带有 ejs 扩展名的页面,其中包含一个 for 循环和从数据库中获取的变量值。现在,我的问题是:谁执行? (客户端或服务器)MySQL 查询的结果列表/数组发送给客户端,然后是客户端根据 JavaScript 决定必须打印哪一行,还是服务器制作 HTML 页面直接发送给客户端?

这是 Node 服务器:

var express = require('express');
var mysql = require('mysql');
var select;
var app = express();

app.set('view engine', 'ejs');

var con = mysql.createConnection({
host: "localhost",
user: "root",
password: "myPassword",
database: "test"
});

con.connect(function(err) {
if (err) throw err;
con.query("SELECT nome FROM prova", function (err, result, fields) {
if (err) throw err;
select = result;
});
});

app.get('/count/:number', function(req, res) {
res.render('page.ejs', {counter: req.params.number, names: select});
});

app.listen(8081);

这是我请求的页面:

<html>
<head>
<title>Titolo pagina web</title>
</head>
<body><h1>Sto per contare fino a <%= counter %></h1>

<p><%
for (var i = 1; i <= counter; ++i) {
%>

<%= i %> ...

<% } %></p>

<p>Bene, ho finito. Adesso scelgo un nome a caso tra quelli che mi sono stati inviati.
<%= names[0].nome %>
</p>
</body>
</html>

最佳答案

EJS , 是一个 templating engine .

enter image description here .

The list/array of results of the MySQL query is sent to the client and then is the client to decide which of the row must be printed according of the JavaScript or the server make the HTML page and send it to the client directly?

没有。客户端已经收到处理后的数据,他看不到模板上设计的源代码,也看不到 NodeJS 源代码。一个简单的类比是查看模板,就好像它们是大学申请的地方,数百名学生将收到相同的表格,您只需填写空白,然后发送。阅读该应用程序的人不会知道您是如何写的,您使用的是什么铅笔,以及您写的时间,他们只会看到已经处理过的数据。在您的情况下,服务器将处理数据并以纯 HTML 格式发送结果。

关于javascript - Node Js、javascript、mysql,客户端看到/看不到什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56199732/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com