iT邦幫忙

0

想研究怎麼做出類似repl.it的功能(在網頁上實現terminal 的 interactive IO)

先謝謝各路大神點進來Orz
就某天看到時覺得很酷炫 就想說來做一個看看呢...

正文開始

如果要透過node Child_Process來執行一個.py,假如沒有'I'的部分那倒是很輕鬆就能解決了。就只是把輸出導回到網頁上而已。

但遇到有child process要請求使用者輸入的時候就gg了,研究了好一陣子,貌似主process並沒有辦法透過event區分出child是不是在等待輸入?而且預設上好像沒有預先塞input到childprocess的stdin的話,一但child process需要輸入就直接判斷終止了。

想說是不是自己的思考方向有錯誤?

DanSnow iT邦新手 1 級 ‧ 2020-04-24 09:36:33 檢舉
正常你 spawn 時 stdio 有設成 pipe 的話,只要你不要呼叫 stdin 的 end 應該是不會造成 child process 終止的,另外以類 unix 系統下而言,有些程式會偵測它的輸入是不是 tty ,如果不是行為可能會不一樣,這時候你就會需要用到 pty 了
jokie7585 iT邦新手 5 級 ‧ 2020-04-24 10:26:41 檢舉
好的 感謝您提供的方向~

尚未有邦友回答

立即登入回答