关于HttpServer连接关闭的问题

在使用HttpServer的时候,如果一个客户端提前关闭了连接,那么onRequest的逻辑还会继续执行完吗?

目前的测试来看,上述情况会在日志里记录一条connection[] is closed的Error。我推测是在将response发送给客户端时引发的Error,那么我们有什么办法能够做到让客户端关闭连接时停止执行onRequest逻辑,从而避免引发这种Error吗?

2017-11-14 11:08
0
0

shenzhe - swoole开发组成员

赞同来自:

onRequest是数据包已经到了服务端。

有两个方式可以来处理。

1) 可以最开始可以用connetion_info获取fd的状态,看是否正常

2)可以在最后用connetion_info获取fd的状态,看是否正常来决定是不是end

另,如果处发onClose的话,也可以有机会知道这个fd是不是已经关闭了。

2017-11-16 17:49

要回复问题请先登录注册