AJAX与C HTTP服务器断开连接
Ajax disconnects from C++ http server
我已经使自己成为一个简单的C 应用程序,该应用程序通过HTTP流式传输数据。当我在浏览器中打开服务器IP和端口时,我可以在浏览器窗口中看到流。但是,从浏览器到C 服务器提出的任何XHR请求将在接收标头后立即从客户端自动关闭。使用telnet或php甚至没有任何脚本的浏览器,都会给我流式数据而没有问题。将AJAX连接到生成虚拟流也有效的PHP脚本。
什么可能导致这个问题?可能是由第一个字节发送的是' 0'引起的吗?或者可能是由使用的端口不为80的?
引起的C 服务器和PHP脚本都在同一台Debian Linux计算机上运行。JS脚本已在多个浏览器中进行了测试,包括Opera,Mozzila Firefox和Chrome。
服务器发送theese标题:
write(*con, "HTTP/1.1 200 OKn",16);
write(*con, "X-Powered-By: Darkern",21);
write(*con, "Pragma: no-cachen",17);
write(*con, "Content-Type: text/plain; charset="utf-8"n",42);
write(*con, "Connection: keep-aliven",23);
好吧,所以在Wireshark和Opera Dragonfly的帮助下,我已经分离了几个问题:
- httprequest中的" ResponseText"始终是"(一个空字符串),尽管在Wireshark中,我可以轻松地看到正确接收的数据。
- " ReadyState"在接收响应时始终为4
您应指示内容长度的标头,以指示流中流的确切大小。另外,出于好奇心,您是否正在流纯文本(如您的内容类型中所示)吗?如果是,没有内容长度可能是问题,因为rnrn
在HTTP
相关文章:
- 升压信号2将插槽传递到成员功能以断开连接
- 视频在唤醒其他线程时输入设备断开连接
- SNMP 代理在单元测试期间断开连接
- 断开连接后重新连接boost beast(asio)websocket和http连接时出错
- C++套接字客户端断开连接
- 如何在 Windows 进程回调中断开连接时获取设备信息(硬件 ID)
- 如何在 Grpc 中使用双向流时检测(物理)断开连接
- 对等方断开连接后未释放 SSL 内存
- SIGPIPE C++确定哪个 TCP 套接字已断开连接
- C++中断开连接的记录集
- 断开连接时Arduino系列读取
- Poco::Net HTTPServer:如何检测断开连接的客户端?
- C++执行会导致监视器断开连接
- QJSONRPC 中的客户端连接/断开连接事件
- 如何检测用户何时与网络断开连接
- AJAX与C HTTP服务器断开连接
- 如何在 Thrift 中检测服务器断开连接
- 如何检测程序运行时 Kinect 何时断开连接/拔出
- Arduino 以太网扩展板无法检测到断开连接
- 加速和 Windows 套接字 - 正确处理 TCP 客户端断开连接方案