开源网络库hp-socket,当作为httpserver时,当收到一个http chunk请求时,各个listener的回调顺序是什么?
时间: 2024-04-20 17:22:13 浏览: 11
在开源网络库 HP-Socket 中,当作为 HTTP 服务器接收到一个 HTTP chunk 请求时,各个监听器(listener)的回调顺序如下:
1. OnPrepareListen:在监听器准备好监听之前调用,可以在此处设置服务器的参数和配置。
2. OnAccept:在接受到新的客户端连接时调用,可以在此处对连接进行初始化和处理。
3. OnHandShake:在与客户端建立连接并完成握手后调用,可以在此处进行身份验证或其他必要的操作。
4. OnHeadersComplete:在接收到完整的 HTTP 请求头后调用,可以在此处处理请求头的相关逻辑。
5. OnChunkHeader:在接收到每个 HTTP chunk 的头部时调用,可以在此处对每个 chunk 进行处理。
6. OnChunkComplete:在接收到每个 HTTP chunk 的数据完成后调用,可以在此处对每个 chunk 的数据进行处理。
7. OnRequestLine:在接收到完整的 HTTP 请求行(request line)后调用,可以在此处处理请求行的相关逻辑。
8. OnRequestBody:在接收到 HTTP 请求体的数据时调用,可以在此处处理请求体的相关逻辑。
9. OnMessageComplete:在接收到完整的 HTTP 请求或响应后调用,可以在此处对整个消息进行处理。
10. OnClose:在连接关闭之前或之后调用,可以在此处进行资源清理或其他必要的操作。
需要注意的是,以上顺序可能会受到具体的实现和配置的影响,不同的网络库可能会有不同的回调顺序。如果你使用的是 HP-Socket,可以参考它的文档和示例代码以了解更详细的回调顺序和回调函数的功能。