web项目页面显示服务器连接被重置,C实现的web服务器 总提示连接被重置
尝试用C实现一个简单的http服务器,遇到了些小问题,请大神帮帮忙
流程:
启动服务器监听端口 -> accept 请求后创建线程处理 -> 返回结果
问题:
向客户端send完结果之后,如果 close() 浏览器页面就会显示 “连接被重置”
如果不close , 页面就会一直加载中
思考:
是我返回的http数据不完整还是其他原因呢?
代码:
char buf[1024];
//发送header
sprintf(buf, "HTTP/1.0 200 OK\r\n");
send(client_fd, buf, strlen(buf), 0);
sprintf(buf,"Content-Type: text/html;charset=utf-8\r\n");
send(client_fd, buf, strlen(buf), 0);
sprintf(buf, "\r\n");
send(client_fd, buf, strlen(buf), 0);
//发送内容
sprintf(buf, "
test");send(client_fd, buf, strlen(buf), 0);
sprintf(buf, "
welcome
");send(client_fd, buf, strlen(buf), 0);
//关闭连接
close(client_fd);
回答:
因为你的浏览器不知道你的数据是否返回完毕了,你需要把你要响应
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
