Bash

用於將 HTTP PUT 請求寫入文件的 unix 實用程序

  • March 8, 2021

我有一個網路設備,它只支持通過轉儲到 http/https URI 的遠端系統日誌。它支持可選的基本身份驗證,可以在原生/JSON 格式之間切換……就是這樣。

在此處輸入圖像描述

$$ update $$我發現使用nc它只會發送我在上面的 URI 欄位PUT /uri/ HTTP/1.1uri輸入的任何內容,並期望得到HTTP/1.1 200 OK響應 我只是在尋找一種工具,可以將這些請求中的數據寫入文件,並處理對發送方設備的響應。看起來nc可以通過一些腳本和 jank 來處理這個問題,但我不確定它是否適合這項工作。

我創建了一個愚蠢的小網路nc服務,這似乎對我有用:

#!/bin/bash
while true;
 # reply to web traffic with a basic 200 response
 do cat /usr/local/bin/200.http |
   # listen on port 80
   nc -l 80 |
   # save any json to a file
   grep '{"transaction"' >> /path/to/logs.json
done

我將它包裝到一項服務中,並將其防火牆連接到該特定設備。

引用自:https://unix.stackexchange.com/questions/637664