当前的web应用,前后端分离开发已然是主流:
1.后端一般RESTful风格的api,接收的参数和返回的结果都是json的。
2.后端在做开发的时候,需要一个模拟的服务端,这里用nodejs模拟服务端。
目录结构:
demo
│ server.js
│
└─data
rgm_get.json
启动nodejs服务器
node server.js
访问获取文件rgm_get.json内容的路径
http://127.0.0.1:8888/data/rgm_get.json
server.js的代码
var http = require('http');
var fs = require("fs");
var url = require("url");
var path = require("path");
http.createServer(function (request, response) {
//解析url获取相对路径,如:
//解析 http://127.0.0.1:8888/data/rgm_get.json
//获得 /data/rgm_get.json
var pathname = url.parse(request.url).pathname;
if ('/favicon.ico' == pathname) {
return;
}
var extname = path.extname(pathname);
// console.log("received Request for: " + pathname + ", ext: " + extname);
if ('.json' != extname) {
response.end('not a json file request\n');
return;
}
// 文件路径 ./data/rgm_get.json
var filepath = '.' + pathname;
console.log("请求文件: " + filepath);
// 发送 HTTP 头部
// HTTP 状态值: 200 : OK
// 内容类型: text/plain
response.writeHead(200, { 'Content-Type': 'text/plain' });
// 同步读取
var data = fs.readFileSync(filepath);
var context = data.toString();
console.log("文件内容: " + context);
// 发送响应数据
response.end(context + '\n');
}).listen(8888);
// 终端打印如下信息
console.log('Server running at http://127.0.0.1:8888/');