ziniulian2
2/16/2016 - 1:17 AM

解析 GET、POST 参数

解析 GET、POST 参数


// 解析 GET、POST 参数
parseParam = function(request, response, callback) {
	var postData = "";

	// 执行回调函数
	var cb = function () {
		callback (request, response, querystring.parse(postData));
	};

	if (request.method == "GET") {
		postData = url.parse(request.url).query;
		cb();
	} else if (request.method == "POST") {
		// 设置接收数据编码格式为 UTF-8
		request.setEncoding("utf8");

		// 因为nodejs在处理post数据的时候,会将数据分成小包来序列处理。所以必须监听每一个数据小包的结果
		request.addListener("data", function (postDataChunk) {
			postData += postDataChunk;
		});
 
		// 所有数据包接收完毕
		request.addListener("end", cb);
	}
};