系统不提供业务层面上的逻辑,只负责存储和结构关系。业务相关的数据,全部通过参数化传入。
upload.js 文件代码:
//自定义参数区
var basePath='e:/';//上传的根路径
var tempPath='c:/';
var redis_ip='127.0.0.1';
var redis_port=11000;
var redis_dbindex=5;
//系统说明:
//POST的时候,系统一定要传递的参数有 url,path,key,db_index
//GET的时候.del=filepath,path格式/123/23/23/sdf.jpg .需要传递del,key,dbindex
//----系统定义区
var http = require('http');
var fs=require('fs');
var ps=require('path');
var formidable = require('formidable');
var util=require('util');
var redis = require('redis');
var querystring=require('querystring');
var server;
server = http.createServer(function(req, res) {
if (req.method=='POST') {
var form = new formidable.IncomingForm(),
files = new Array(),
File=null,
fields = new Array();
form.uploadDir = tempPath;
form.encoding='utf-8';
form.maxFieldsSize=5*1024*1024;
form.keepExtensions=false;
form.on('field', function(field, value) {
try{
fields[field]=value;
}
catch(e)
{
writefalse(res,e,'onfield error');
}
})
.on('file', function(field, file) {
try{
files[field]=file;
File=file;
}
catch(e)
{
writefalse(res,e,'onfile error!');
}
})
.on('end', function() {
try{
if(fields['url'] && fields['path']&& File.size>0)
{
if(fields['filesize'] && File.size>fields[