mongodb nodejs ajax 图片上传 到图片处理那步就卡住了

我做个个人信息添加修改页面,主页有个add ,点进去跳转到个人信息页面,有名字邮箱还有个图上传

,关于图片上传我用了ajax,,但是不知道为什么,到处理文件那步骤就卡住了,想让他返回错误也
没返回。

try {
    var form = new formidable.IncomingForm();
    form.encoding = 'utf-8'; //设置编码为‘uft-8’
    form.uploadDir = 'public/temp/'; //设置临时目录   
    form.keepExtensions = true; //保留图片后缀
    var maxSize = 1 * 1024 * 1024; //最大1M
    var sublength = form.uploadDir.length;
    res.json({
        code: 200,
        message: {
            "url": 'uploads/',
            'form': form
        }
    });
    return;
    form.on('file', function(field, file) {
            console.log(file);
            //var fileType = file.path.substring(file.path.lastIndexOf("."));
            console.log(fileType);
            if ('.jpg.jpeg.png.gif'.indexOf(fileType.toLowerCase()) != -1 && file.size <= maxSize) { //如果复合要求
                var readFs = fs.createReadStream(form.uploadDir + file.path.substring(sublength)); //创建读取目录
                var writeFs = fs.createWriteStream('public/uploads/' + file.path.substring(sublength)); //创建写入路径
                readFs.pipe(writeFs); //类似复制粘贴

                res.json({
                    code: 200,
                    message: {
                        "url": 'uploads/' + file.path.substring(sublength)
                    }
                }); //返回json信息
            } else {
                res.json({
                    code: 401,
                    message: {
                        'warn': "图片格式不正确!需要不大于1M且支持gif,png,jpg"
                    }
                });
            }
        });
        /*form.parse(req,function(error,fileld,files){
            res.writeHead(200,{'content-type': 'test/plain'})
            res.write('upload')
            res.end()
        })*/
    form.error(function(e) {
        res.json({
            code: 500,
            message: {
                error: e
            }
        })
    })

    /* form.parse(req); 
     form.on('files',function(field,file){
        if(file.path){
            fs.unlink(file.path,function(err){
                if(err){
                    console.log(err);
                }
            });//清除缓存
        }
     });*/
} catch (e) {
    res.json({
        code: '500',
        message: e
    })
}
//
exports.upload_delete = function(req, res) { //这里是删除指定图片
    var user_delete = req.body.deleteText;
    fs.unlink('public/' + user_delete);
    res.send(200);

};

源码地址在https://pan.baidu.com/s/1dFwxkZn 没病毒 ,初学者,求指导 弄了大半天

阅读 2.4k
1 个回答

如果有错误的话,调试工具会抛出错误信息。但不知道你为何没有看到错误信息

另外,你可以试着在代码里面将可能的错误信息打印出来。例如,你的mongoose的error信息没有打印出来的。

供参考。

Love MongoDB! Have Fun!

MongoDB中文社区线下活动缤纷,请猛戳下方:
2017华山论剑|MongoDB中文社区

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题