node.js 是一个让javascript运行在服务端的开发平台
node.js 安装教程
链接地址:
http://note.youdao.com/noteshare?id=518badd92ce1aaac2e6dcaf94cb720a7&sub=A0FEAC85C101413A9B66B4D5C7D5F277
1.加载http模块--包含http协议的所以内容
var http = require('http');
2.使用fs加载文件的模块
var fs = require('fs');
3.使用http模块创建服务
var server = http.createServer();
4.给服务设置监听,监听的端口号为8088
server.listen(8088,function(){
console.log('''Server is rining port 8088');
});
//设置mysql模块
var mysql = require('mysql');
//1.连接数据库
var connection = mysql.createConnection({
host:'localhost',//主机名
user:'root',//用户
password:'123456',//密码
port:'3306',//端口号
database:'web'//数据库名
});
//2.连接数据库
connection.connect();
//3.编写sql并 执行sql
var sql ='sql语句';
connection.query(sql,data,function(err,result){
if(err){
console.log(err.message);//打印错误记录
return;
}
//进行页面响应
response.writeHead(200, {
'Content-Type': 'text/html'
});
//注册成功前往登录页面
fs.readFile('JD/view/login.html', 'utf8', function (err, data) {
if (err) {
throw err;
}
response.end(data);//将页面输出在浏览器上
});
});
//4.关闭连接
connection.end();
5.编写逻辑
var handRequest = function(request , response){
//1.获取请求地址
注意:在获取请求地址的时候,把请求方式改为get,在输入框里面加入name属性,如果不加,就获取不到参数.
request.url;
//2.将地址进行拆分
var attstr = req.url.split('?');
//split将值按问号拆分成左右两个部分
//将获取的值进行判断
。。。。。。。。。。
获取数据库读取上面的mysql模块
//在链接数据库 node js 在同一连接下执行插入数据会报错,必须重新写一个新的链接,才不会报错
}
6.设置触发事件的条件 任何请求都会触发该事件
语法:server.on('事件名称',事件逻辑)
server.on('request',handRequest);
***
执行node.js的"cannot enqueue Handshake after invoking quit"错误
一开始运行一切正常,但当我执行第二个query的时候,会报这个错:
cannot enqueue Handshake after invoking quit
这是因为 每次关掉连接之后你都需要用createConnection方法创建一个新的连接,所以不能放在请求的外面.