在测试websocket期间保存日志时发生WriteAfterEnd错误



我正在使用NodeJ构建命令行websocket测试。

我在文件的顶部定义文件流

const fs = require('fs');
let writeStream = fs.createWriteStream(log_path);

我正在使用下面的代码测试websocket,在尝试写入文件流时出错。

async function test(...) {
const websocket = new WebSocket(wsUrl)

await connection(websocket)
websocket.send(msg_json)

let message = getMessage("Sent")
writeStream.write(message)
...
}

服务器按预期获取消息当我注释掉writeStream.write行代码时,它不会出错。然而,对于这条线,我得到了以下错误:

Error [ERR_STREAM_WRITE_AFTER_END]: write after end
at writeAfterEnd (_stream_writable.js:266:14)
at WriteStream.Writable.write (_stream_writable.js:315:5)
at test (single_test.js:56:29) {
code: 'ERR_STREAM_WRITE_AFTER_END'
}

有人能为我提供一些如何将此消息保存到日志文件的想法吗?

我使用了一个演练,通过bash命令保存日志作为临时解决方案。

最新更新