질문 제목이 질문의 목표에 대해 명확하지 않은 경우 죄송합니다.
Bash만 사용하여 응답 전용 웹 서버를 만들 수 있었습니다. 컬 포스트 요청을 받으면 입력된 내용에 관계없이 결과를 반환합니다.
게시물 요청
curl -d '{"Name":"Lorem", "age":"34"}' -H "Content-Type: application/json" -X POST http://<ip>:8080/
서버 스크립트(server.sh)
#!/bin/bash
while true; do
echo -e "HTTP/1.1 200 OK\n\n<h1>Title</h1>$(date)" \
| nc -l -k -p 8080 -q 1;
nc -l -k -p 8080 -q 1 | cat - | grep -o '{...\+}';
done
처음으로 컬을 하면 HTTP/1.1 200 OK\n\n<h1>Title</h1>$(date)
올바르게 반환되지만 그렇지 않고 nc -l -k -p 8080 -q 1 | cat - | grep -o '{...\+}';
컬이 종료됩니다.
두 번째로 컬을 사용했을 때 반환되지 않았습니다 HTTP/1.1 200 OK\n\n<h1>Title</h1>$(date)
. 이제는 결과를 반환 nc -l -k -p 8080 -q 1 | cat - | grep -o '{...\+}';
하고 컬이 종료되지 않습니다.
아이디어는 컬( nc -l -k -p 8080 -q 1 | cat - | grep -o '{...\+}';
+ 사용 jq
)의 입력을 처리하고 응답한 다음 컬/연결을 닫는 것입니다.