我正在尝试使用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
我想知道是否可以这样做以及是否有任何建议。
谢谢
答案 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());
}