2015-10-16 64 views
1

我試圖用Django構建一個必須在服務器shell上運行命令並在瀏覽器上實時顯示輸出的Web應用程序。在Django WebApp上實時查看shell命令的輸出

我需要能夠查看輸出,並在必要時取消執行。

我想知道我是否需要安裝websocket服務,或者是否有更簡單的方法來實現此目的。

回答

0

我沒有做過同樣的事情,但我想你可以做這樣的:

  1. 首先,當你在服務器上運行一個命令,您需要將輸出保存到數據庫或文件。其次,在前端需要一個守護進程,它會通過http檢查數據庫或文件每分鐘或幾秒鐘。一旦守護進程發現有變化,它會在瀏覽器上顯示它。

  2. 最後,如果你想通過瀏覽器取消它,我認爲你應該發送一些信號到後端,並在django應用程序中檢查信號,並可能通過python運行一些命令。如果要取消命令,雖然服務器,它可能是那麼容易,因爲kill -9 pid

關於第2步,我建議你使用setInterval