CNode

用 gm 处理上传图片,总是出现 Error: spawn ENOENT 的问题

Mminglei1202发布于12 年前最后回复12 年前6 回复14557 浏览0 收藏

如题,代码为

var path = req.files.avatar.path;
var originImg = imageMagick(path);
exec('chmod 777 '+path,function(err){
    if(err) console.log(err);
    else{
        originImg.resize(250, 250)
        .autoOrient()
        .write('public/images/'+req.files.avatar.name,function(err){
            if(err) console.log(err);
            else res.send({status:1});;
        })
    }
})

求大神解答!

查看回复

回复 (6)

Y
yorkie#1·12 年前

问题出在第三行,ENOENT指路径不可到达,你可以console.log(path)一下,然后看是否能直接cd到。

U
usherwong#2·12 年前

或者环境变量配置的有问题

Y
yidahis#3·12 年前

无语了,我按照官方文档在mac下通过 brew 安装了ImageMagick之后还是和楼主报一样的错?求解啊!来个实例吧!

Y
youxiachai#4·12 年前

应该是路径问题了..把路径打印出来然后直接用ImageMagick 试一下那个路径能不能用..

Y
youxiachai#5·12 年前

对了,gm 默认用的是 graphicmagick... 如果要用imagemagick 需要设置一下..

L
loufq#6·12 年前

找问题找过来的, 看看这个https://github.com/Homebrew/homebrew/issues/6891 我更具这个和命令行的提示操作了一遍后,好了

参与回复
登录后即可参与回复。登录