gpt4 book ai didi

c++ - 如何在 C++/QT 中创建带有 TCP 服务器套接字的 Http 服务器

转载 作者:行者123 更新时间:2023-11-28 02:19:24 25 4
gpt4 key购买 nike

我想创建一个 Http 服务器来发送 MJPEG 流。因此,首先我想创建一个只发送一些 html/文本的简单版本。我已经设法设置了一个 TCP 服务器,但我不知道如何像 http 服务器一样“运行”。

我做了什么:创建了一个 TCP 服务器。当客户端连接时,会创建一个 TCP-Socket。然后我实现了一个 ReadyRead SLOT,它在浏览器向服务器发送“GET”请求时执行。

GET / HTTP/1.1
Host: 127.0.0.1:8889
User-Agent: Mozilla/5.0...

然后我运行下面的代码

QByteArray header = "HTTP/ 1.1 200 OK\r\n";
m_Client->write(header);

QByteArray ContentType = "Content-Type: text/html\r\n";
m_Client->write(ContentType);

QByteArray Body = "Test";
m_Client->write(Body);

m_Client->close();

但是我在浏览器中看到的是

HTTP/ 1.1 200 OK
Content-Type: text/html
Test

那我做错了什么?我想过接收客户端 GET 请求,返回发送 header 、Mimes 和内容,然后关闭连接....这个方法是错误的还是我编码的方式?

最佳答案

/1.1 之间有一个额外的空格,并且在 header block 和响应正文之间缺少一个空行。

关于c++ - 如何在 C++/QT 中创建带有 TCP 服务器套接字的 Http 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33064179/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com