-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathserver.js
52 lines (48 loc) · 2.08 KB
/
server.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
/*
服务器端
*/
var http = require('http');
var fs = require('fs');
var url = require('url');
var func = require("./js/serverFunc");
// 创建服务器
http.createServer( function (request, response) {
// 解析请求,包括文件名
var pathname = url.parse(request.url).pathname;
var urls = ["/getTableNum", "/getJsonData", "/changeTableNum", "/changeJsonData", "/first", "/changeProduct", "/deleteData"];
var fileUrls = ["./data/tableNum.txt","./data/?.json", "./data/tableNum.txt", "./data/?.json",
"./data/turnoverData.json", ["./data/turnoverData.json", "./data/detailData.json", "./data/keyNum.json"],
["./data/turnoverData.json", "./data/detailData.json", "./data/keyNum.json"]];
var funcs = [func.getFiler, func.getFiler, func.writeFiler, func.writeFiler, func.first, func.changeFiler, func.deleteFiler];
func.status = 0;
//路由
if(urls.indexOf(pathname) !== -1){func.Router(request, response, urls, fileUrls, funcs);}
//从文件系统中读取请求的文件内容
if(func.status === 0){
fs.readFile(pathname.substr(1), function (err, data) {
if (err) {
// HTTP 状态码: 404 : NOT FOUND
// Content Type: text/plain
if(pathname.indexOf(".css") !== -1){
response.writeHead(404, {'Content-Type': 'text/css'});
}else{
response.writeHead(404, {'Content-Type': 'text/html'});
}
}else{
// HTTP 状态码: 200 : OK
// Content Type: text/plain
if(pathname.indexOf(".css") !== -1){
response.writeHead(200, {'Content-Type': 'text/css'});
}else{
response.writeHead(200, {'Content-Type': 'text/html'});
}
// 响应文件内容
response.write(data.toString());
}
// 发送响应数据
response.end();
});
}
}).listen(8080);
// 控制台会输出以下信息
console.log('http://127.0.0.1:8080/index.html');