2017-05-16 67 views
1

我需要運行一個簡單的HTTP服務器,該服務器只記錄傳入的請求,而不是任何內容。僅用於記錄請求的簡單HTTP服務器

它應該記錄整個請求的內容。像標題,餅乾,身體....

我只需要簡單的解決方案,我可以在幾分鐘內運行,並將工作。

實現語言並不重要。

喜歡的東西,但查爾斯HTTP服務器,而不是代理

回答

3

如果你正在尋找它可以記錄所有的請求的信息在網上的HTTP服務器,您可以使用RequestBin

如果您需要製作自己的HTTP 日誌服務器,Node.js + Express是一個不錯的選擇。這很容易和快速地進行:

  1. 安裝Node.js
  2. 安裝Express generator,使Web應用程序可以在幾秒鐘內產生:npm install express-generator -g
  3. 生成一個Web應用程序並安裝所有的依賴關係:
 
    express myapp 
    cd myapp 
    npm install 
  1. 編輯myapp/app.js並在行之前插入以下代碼塊app.use('/', index);
 
    app.use(function(req, res) { 
     console.log(req.headers); 
     console.log(req.cookies); 
     console.log(req.body); 
     res.send('OK'); 
    }); 
  • 就是這樣。現在在控制檯中運行DEBUG=myapp:* npm start並啓動Web應用程序。所有發送到主機localhost:3000的HTTP請求都將記錄在其標題,cookie和正文中。
  • 如果您需要將這些日誌寫入文件,可以使用一個記錄器模塊,例如log
  • 4

    對於一些超級簡單的替代品,有netcat的:

    $ nc -l -p 8080 
    

    和Python的內置:

    $ python -m SimpleHTTPServer 8080 
    

    Netcat的不會成爲反應,所以你可能不會太遠,SimpleHTTPServer贏得」 t顯示POST請求(至少)。但偶爾我覺得都很有用。

    +1

    用於nc的正確命令是:nc -l 8080 –

    +1

    有多種版本的netcat,它們具有不同的行爲,令人惱火。 -p標誌即使在可選的情況下也可以工作。 – rich