簡體   English   中英

如何向 node.js 上的 pdb 發送消息?

[英]How to send messages to pdb on node.js?

我正在嘗試編寫一個具有 Python 調試器 GUI 的 node.js 應用程序。 目前,我有一個 node.js 應用程序,它使用 pdb.set_trace() 調用 Python 文件。 我可以使用 node.js 生成子進程,但我不確定如何讓 node.js 發送子消息。

目前,我在 node.js 的帖子部分生成了一個子程序:`

pyProg = spawn('python', ['test-submission-'+req.body.userID+'.py', testCase, "debug"], {stdio: ["pipe","pipe","pipe"]});

pyProg.stdout.on('data', function(data) {
        res.write("\n\nOUTPUT:\n")
        res.write(data);
        res.end('\nDEBUG');
});

` 這正確地生成了子進程並且 node.js 告訴前端 pdb 已經啟動。

現在,為了與 pdb 通信,我編寫了以下帖子部分:`

router.post('/sendDebugMSG', function(req, res)  {
    console.log("Sending debug message: " + req.body.message);
    pyProg.stdin.write(req.body.message);
    pyProg.stdout.on('data', function(data) {
        res.write("\n\nOUTPUT:\n");
        res.write(data);
        res.end('\nDEBUG');
    });
    pyProg.stderr.on('data', function(data) {
        dataStr = data.toString();
        res.write("\n\nOUTPUT:\n")
        res.write(data);
        res.end('\nFAILED TO EXECUTE');
        // res.send("FAILED:" + dataStr);
        // res.end('end');
    });
});

當前端發送消息“next”時,唯一輸出的是

Sending debug message: next

有誰知道如何讓 node.js 與 pdb 通信?

事實證明,我需要在下一個命令后附加一個 \n。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM