puppet-wechat icon indicating copy to clipboard operation
puppet-wechat copied to clipboard

当在一个群里发送逐条转发超过4张图片时,进程退出

Open lincong1987 opened this issue 6 years ago • 1 comments

以下例子可以重现异常。

Code:

let file = await message.toFileBox().catch (e=>{
    logger.error(e);
    return null;
});

logger.info(`[Get File] [${file.name}] message.toFileBox()`);

let base64 = await file.toBase64().catch ((e)=>{
    logger.info(`[ERROR] [${file.name}] file.toBase64()`);
    logger.error(e);
    return "";
});

if (!fs.existsSync(`${dir_path}${file_path}${file_name}`)) {
    logger.info(`Try Save file to [${dir_path}${file_path}${file_name}]`);
    await file.toFile(`${dir_path}${file_path}${file_name}`,true).catch ((e)=>{
        logger.info(`Save File Fail: ${dir_path}${file_path}${file_name}`);
        logger.error(e);
        file_path="";
    });
    logger.info(`File Saved to ${dir_path}${file_path}${file_name}`);
} else {
    logger.info(`File exist ${dir_path}${file_path}${file_name}`);
}

Logs

2019-01-28 19:10:44.373 [Get File] [4953615700276791816.jpg] message.toFileBox()
2019-01-28 19:10:44.377 [Get File] [6887988699651279779.jpg] message.toFileBox()
2019-01-28 19:10:44.382 [Get File] [2442350745976153281.jpg] message.toFileBox()
2019-01-28 19:10:44.384 [Get File] [4391266251532604927.jpg] message.toFileBox()

2019-01-28 19:10:45.412 Try Save file to [/Users/meizu_t122/projects/robot/assets/image/2019-01-28/be28053b538947ecf35947efa9e6d9e3.jpg]
2019-01-28 19:10:46.487 Try Save file to [/Users/meizu_t122/projects/robot/assets/image/2019-01-28/f67d7532a21ee32a4bf9243f9aed6a2e.jpg]
2019-01-28 19:10:47.378 Try Save file to [/Users/meizu_t122/projects/robot/assets/image/2019-01-28/660a7707996b3bc28bf8796e67d1f440.jpg]
2019-01-28 19:10:48.634 File exist /Users/meizu_t122/projects/robot/assets/image/2019-01-28/d7ebd959481fa5454ddde751275d0a34.jpg


Error: read ECONNRESET
    at TCP.onStreamRead (internal/stream_base_commons.js:111:27)
  onFatalError.defaultOnFatalError	
  (anonymous function)	
  (anonymous function)	
  ontimeout	
  tryOnTimeout	
  listOnTimeout	
  processTimers	
2019-01-28 19:10:48.676 PID:4922 node 1 exit!

lincong1987 avatar Jan 28 '19 11:01 lincong1987

如果把 await file.toFile 这块代码去除,异常就消失了

lincong1987 avatar Jan 28 '19 11:01 lincong1987