?
1,下面就是上传文件的nodejs的后台
?
var express = require('express'); var fs = require('fs'); var path = require('path'); //createServer var app = module.exports = express.createServer(); app.configure(function(){ app.use(express.bodyParser({uploadDir:'c:\\aa'})); app.use(express.methodOverride()); app.use(app.router); app.use(express.static(__dirname + '/public')); }); app.post('/:service?', function(req, res){ if (req.files && req.files.codecsv != 'undifined') { var temp_path = req.files.codecsv.path; if (temp_path) { fs.readFile(temp_path, 'utf-8', function(err, content) { //文件的内容 console.log('content',content); // 删除临时文件 fs.unlink(temp_path); }); } } }); app.listen(4000, function(){ console.log("Express server listening on port %d in %s mode", app.address().port, app.settings.env); });
?
?
?
2,前台代码使用jquery的ajax
?
<script type="text/javascript"> $(function(){ $('#file_upload').click(function(){ var data = new FormData(); var files = $('#file')[0].files; if (files) { data.append('codecsv',files[0]); } $.ajax({ cache: false, type: 'post', dataType: 'json', url:'upload', data : data, contentType: false, processData: false, success : function () { } }); }); }) </script> <table style='width: 100%;height: 100%'> <tr> <td style='width:800px;text-align: center;'> <input id='file' type="file"> <input id='file_upload' type="button" value="upload"> </td> </tr> </table>?
?