带有mysql的Express.js / Node.js

时间:2016-03-15 12:24:20

标签: mysql node.js express

我一直认为javascript是客户端脚本,没有可能与服务器端一起工作但是由于node.js它已经改变了。 但我仍然不明白它是如何工作的,例如看看这段代码:

var mysql      = require('mysql');
var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'dbuser',
  password : 's3kreee7'
});

connection.connect();

connection.query('SELECT 1 + 1 AS solution', function(err, rows, fields) {
  if (err) throw err;
  console.log('The solution is: ', rows[0].solution);
});

connection.end();

javascript正在客户端显示,所以每个人都可以看到DB的登录名和密码?或者节点代码不在客户端显示?

所以如果smne直接在他的服务器上有phpmyadmin,比如网站/ phpmyadmin或者网站/ mysql它允许黑客登录到它? 对不起,如果这是一个愚蠢的问题,我以前从未使用过节点。

2 个答案:

答案 0 :(得分:1)

此代码正在服务器端执行,

我们可以说这段代码与PHP类似,只是在PHP上。

没有人可以访问(通常)服务器端代码。

答案 1 :(得分:0)

Node.js允许在浏览器中运行Javascript,在后端,像@alexey这样的类似PHP,但是为了运行你打算在后端运行的JavaScript,它需要被解释和执行。这就是Node.js使用虚拟机V8 Google所做的事情,这是Google Chrome使用的相同JavaScript运行时环境。

主要特别是它作为异步事件驱动框架。