正常HTTP请求与TCP连接+ HTTP标头

时间:2016-02-25 16:44:11

标签: qt sockets http tcp vlc

我正在尝试使用TCP连接+ HTTP标头模拟http请求。 我用VLC播放器测试它。我使用QT开发我的应用程序。

所以,基本上我开始在VLC播放器中流式传输视频来托管http://192.168.0.100:55555。然后在代码中我尝试通过http GET请求连接到服务器,该请求成功。

我希望代替http请求通过TCP连接到http://192.168.0.100:55555并使用相同的套接字将纯GET请求作为文本发送,但我得到QAbstractSocket::ConnectionRefusedError

QTcpSocket* socket = new QTcpSocket();
socket->connectToHost(m_session->remoteHost().address, m_session->remoteHost().port);
// Then I get QAbstractSocket::ConnectionRefusedError in a slot
// connected to error() signal

我想知道是否可以这样做以及是否有任何建议。

谢谢

1 个答案:

答案 0 :(得分:0)

为什么不基于Http download example

的代码
//...
    reply = qnam.get(QNetworkRequest(url));
//...
    connect(reply, SIGNAL(readyRead()),
        this, SLOT(httpReadyRead()));
//....
void HttpWindow::httpReadyRead()
{
    // this slot gets called every time the QNetworkReply has new data.
    // We read all of its new data and write it into the file.
    // That way we use less RAM than when reading it at the finished()
    // signal of the QNetworkReply
    if (file)
        file->write(reply->readAll());
}