我正在实现 HTTP 服务器,它将负责:
1. 从浏览器接收请求并将其转发到另一个 HTTP 服务器。2. 从 HTTP 服务器读取响应并直接转发到浏览器。
在这种情况下,我只需要修改接收到的请求中的主机名,同时使用send()
套接字 API 通过套接字将其发送到 HTTP 服务器,我正在使用与 HTTP 服务器的套接字连接来转发从浏览器接收到的 HTTP 请求。
我有以下查询:
- HTTP 请求转发是否可以与
recv()
套接字send()
API 一起使用。 - 如果
recv()
返回0
则服务器或浏览器已关闭套接字?
但是有时我的应用程序会卡在接收中并且 1-2 分钟内没有返回。 - 为了从服务器接收套接字上的数据,我需要等到
recv()
返回 0 还是需要检查接收数据的内容长度,然后继续recv()
。
我对 HTTP 很陌生。如果有人有用于转发 http 请求的示例应用程序,请提供,以便我更好地学习。