开发者社区> 问答> 正文

上传消息碰到问题

我在做上传消息的时候

exports.upload = function (req,res) {
    mongodbPool.acquire(function(err,db){
        if(err){
            return res.josn(400,{'err':'acquire db failed'});
        }
        var gridform = require('gridform');
        gridform.db = db;
        gridform.mongo = mongo;
        var form = gridform();
        form.parse(req, function (err, fields, files) {
            if(err){
                mongodbPool.release(db);
                return res.json(400,err);
            }  
            if(files.starVoiceMessage === undefined || fields.star_id === undefined){
                var grid = new Grid(db, 'fs');
                for(var key in files){
                    grid.delete(files[key].id, function(err, result){
                        if(err){
                            //the useless file data can not be delete, its id need to record in error log
                            uploadErrorLogfile.write('file need to delete: '+files[key].id);
                        }
                    });
                }
                mongodbPool.release(db);
                return res.json(400,{'err':'wrong format'});
            } 

程序能运行出正确的结果,但每一次第一次解析时files.starVoiceMessage 就为 undefined点第二次的时候就能正常解析,为什么出现这种情况?

展开
收起
落地花开啦 2016-02-22 13:25:53 2181 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
十分钟上线-使用函数计算构建支付宝小程序服务 立即下载
微信SQLite数据库损坏恢复实践 立即下载
内容驱动游戏分发 立即下载