我正在尝试使用netcat(nc)来设置一个最小的web服务器。例如,当浏览器访问localhost:1500时,它应该显示一个函数的结果(在下面的示例中是日期,但最终将是一个生成一些数据的Python或C程序)。
我的小netcat web服务器需要作为bash中的while true循环,可能像这样简单:
while true ; do echo -e "HTTP/1.1 200 OK\n\n $(date)" | nc -l -p 1500 ; done
当我尝试这样做时,浏览器会在nc启动时显示当前可用的数据。然而,我希望浏览器在请求数据时显示它,该怎么办?
nc
会在连接建立后立即发送响应,这并不总是在客户端发送HTTP GET请求之前发生。对于像Chrome和Firefox这样的许多客户端来说,这似乎不是一个问题,但对于至少Safari来说,这被视为错误,不会发出任何请求。 - undefined