express中的multer进行图片上传,全站都用了csrf,不过每次图片上传时都报“Error: invalid csrf token”错误(已解决)
发布于 7 年前 作者 Damhoo 4492 次浏览 来自 问答

描述一下问题:如果去掉enctype="multipart/form-data",就不会报“Error: invalid csrf token”错误,加上enctype后就报这个错误了。

请各位大大,帮我看一下,要怎么弄,才能不报csrf错误,其他的表单都能正常用,只差这个图片上传功能一直无法使用,都整了两天了,硬是无法弄好。

(解决了)。

10 回复

楼主解决了吗

将csrf_token 加在地址上就好了 "/comment/image?_csrf="+ $('meta[name="csrf-token"]').attr('content'),类似这种

@falost 未解决,我就在图片上传这里不用csrf,其他表单都用!暂时就先这样将就用着。

@wd4219 这样方法你试了可行吧?

@wd4219 测试了可行的,不过我最近在找,希望能找到最优方法!

这个就是cnode的解决办法

在表单数据里加上_csrf不行吗 不然就在headers里加 csurf这个库依次检查req.body._csrf,req.query._csrf,req.headers[‘csrf-token’],req.headers[‘xsrf-token’],req.headers[‘x-csrf-token’],req.headers[‘x-xsrf-token’]

@wd4219 看到了,我还是去翻一下cnode的源码看看!

@imdoge 只有上传图片的表单里加_csrf或者不加都会报“Error: invalid csrf token”的错误,其他修改密码或者注册或者修改资料等加上_csrf都可以。

回到顶部