【发布时间】:2010-11-22 15:44:44
【问题描述】:
我正在使用 WinHTTP 将数据发送到 Web 服务器脚本,在某些情况下,我需要服务器终止传入数据(因为它不是必需的),但仍向客户端应用程序返回响应。我在服务器端使用stream_socket_shutdown(STREAM_SHUT_RD) 来结束传入的数据,然后正常发送响应。问题出在 WinHTTP 上,我按预期从 WinHttpWriteData() 收到否定响应并停止发送数据,但是当我调用 WinHttpReceiveResponse() 它返回 false 并且 GetLastError() 返回 ERROR_WINHTTP_CONNECTION_ERROR。
有没有办法重置 WinHTTP 的内部错误条件?或者在服务器断开连接后接收响应的其他方式?
谢谢, J
【问题讨论】:
-
我不认为您可以在 HTTP 请求中间关闭套接字并期望一切正常;我很确定这违反了协议规范。
标签: php c++ windows apache winhttp