【发布时间】:2019-06-16 22:25:33
【问题描述】:
我已经使用 create-react-app 构建了一个 Todo 应用程序。我正在使用的商店基于本地存储(对象窗口的 JS 属性)。现在我创建了一个 MySQL 数据库并希望连接到该数据库,因此状态将显示数据库中的值,并将通过操作进行更新。
我尝试使用 db.js 通过“节点”控制台连接到数据库并输出值。它有效。
const mysql = require('mysql');
const con = mysql.createConnection({
host: "localhost",
user: "root",
password: "root",
database: 'root'
});
con.connect(function(err) {
if (err) throw err;
con.query("SELECT * FROM tasks", function (err, result, fields) {
if (err) throw err;
console.log(result);
});
});
是否可以使用此脚本将应用程序的状态连接到数据库?
【问题讨论】:
-
从不让您的 Web 应用程序以 root 身份登录数据库。 Root 可以为所欲为,因此,如果您的应用程序有任何漏洞,这只会让您的数据库成为黑客的开放书。而是专门为此应用程序创建一个单独的用户帐户,该帐户仅具有它实际需要才能正常工作的权限。甚至不要在开发或测试期间使用 root 帐户作为快捷方式,因为您还需要测试您的帐户权限 - 否则当您上线时,您可能会遇到与用户帐户设置相关的意外错误。
-
“是否可以连接应用程序的状态” ...您必须更详细地解释您的意思以及您关心的问题。基本上,您可以将任何您希望的数据写入数据库,也可以从中读出您希望的任何数据。数据可以表示任何类型的状态,或您想要的任何其他信息。由你决定。 NodeJS 是 React 前端和数据库服务器之间的中间步骤——它接收来自前端的请求,查询数据库并返回结果。这是一个非常标准的 Web 应用程序设置。
标签: javascript mysql reactjs