【问题标题】:How to handle Array buffer allocation failed in nodejs?如何处理nodejs中的数组缓冲区分配失败?
【发布时间】:2018-02-05 18:58:57
【问题描述】:

我已经在 nodejs 中成功上传了图片,我正在使用 multer。 但有时会发生“数组缓冲区分配失败”错误,我想处理该错误。我试图将代码保留在 try-catch 块中,即使它仍然会引发错误并且我无法弄清楚如何处理此错误或如何避免该错误? 能够上传文件,但是当我尝试更改高度和宽度并制作新图像时,它会引发错误

Uncaught RangeError: Array buffer allocation failed

 at Buffer.Uint8Array (native)

 at FastBuffer (buffer.js:8:1)

 Array buffer allocation failed

   at Buffer.Uint8Array (native)

   at FastBuffer (buffer.js:8:1)

   RangeError: Array buffer allocation failed
    at new Uint8Array (native)
    at Object.getData (/Burg_nodejs/node_modules/jpeg-js/lib/decoder.js:797:18)
    at Object.copyToImageData (/Burg_nodejs/node_modules/jpeg-js/lib/decoder.js:913:23)
    at Object.decode (/Burg_nodejs/node_modules/jpeg-js/lib/decoder.js:985:11)
    at Jimp.parseBitmap (/Burg_nodejs/node_modules/jimp/index.js:310:36)
    at /Burg_nodejs/node_modules/jimp/index.js:202:29
    at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:446:3)

任何建议都会更有帮助

【问题讨论】:

  • 你的内存好像用完了?

标签: arrays node.js image buffer


【解决方案1】:

您似乎没有足够的内存来执行大尺寸上传

【讨论】:

    【解决方案2】:

    jpeg-js 用于图像处理的内存不足,

    - 可能的解决方案是调整图片大小(imagemagick/whatever)

    【讨论】:

      猜你喜欢
      • 2016-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-17
      • 2022-08-08
      • 1970-01-01
      • 2023-03-18
      相关资源
      最近更新 更多