回覆列表
  • 1 # 你永遠追不上的巨人

    停止方法:

    1.首先,不能共享完畢之後,都透過Ctrl+C來關閉NodeJS伺服器。

    2.其次,如果僅僅能向客戶端提供d:\ilinkit_logo.png檔案的下載,是沒有意義的,共享哪個檔案,應該可以透過傳入的引數來指定。我們首先來實現退出功能,如果客戶端向伺服器提交了http://localhost:8000/exit的請求,我們就執行伺服器的退出操作。程式碼如下:1 var http = require( "http" ); 2 var fs = require("fs"); 3 var url = require( "url" ); 4 (空行)5 var file_path = "D:\\ilinkit_logo.png" ; 6 var file_stream ; 7 var buffer_box = [] ; 10 var file_name = file_path.substr( file_path.lastIndexOf("\\")+1 );關鍵的程式碼解析如下:第33行,我們透過request物件獲取客戶端請求的主機及埠內容。第46行~第50行,我們判斷客戶端提交的請求資訊,如果是http://localhost:8000/exit,則呼叫server.close()關閉伺服器。為什麼要判斷是不是localhost提交的請求?因為我們希望僅僅在伺服器本地提交的請求才能關閉NodeJS伺服器。驗證方式如下:1. 啟動伺服器:開啟命令列,進入js指令碼所在的位置,執行:node h_ilinkit_1.js。2. 開啟瀏覽器,輸入:http://localhost:8000,顯示如下:說明當前伺服器啟動正常。

    3. 開啟瀏覽器,輸入:http://localhost:8000/exit。提示NodeJS伺服器已經關閉,我們把瀏覽器關閉之後,發現伺服器已經正常退出,如下所示。這樣,我們就沒必要每次為了退出伺服器,都去按Ctrl + C了。

  • 中秋節和大豐收的關聯?
  • 老人耳朵突然聾了,是怎麼回事,能戴個助聽器嗎?