puppet-wechat
puppet-wechat copied to clipboard
当在一个群里发送逐条转发超过4张图片时,进程退出
以下例子可以重现异常。
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!
如果把 await file.toFile 这块代码去除,异常就消失了