Example #1
0
void Transfer::followRedirect(const QUrl &u) {
    Logger::log("Transfer::followRedirect(). URL: " + u.toString(), Logger::LowVerbosity);
    QDir().mkpath(downloadPath());
    
    if (!m_file.open(m_file.exists() ? QFile::Append : QFile::WriteOnly)) {
        setErrorString(m_file.errorString());
        setStatus(Failed);
        return;
    }
    
    m_redirects++;

    if (!m_nam) {
        m_nam = new QNetworkAccessManager(this);
        m_ownNetworkAccessManager = true;
    }
    
    QNetworkRequest request(u);
    request.setRawHeader("User-Agent", USER_AGENT);
    
    if (m_bytesTransferred > 0) {
        request.setRawHeader("Range", "bytes=" + QByteArray::number(m_bytesTransferred) + "-");
    }
    
    m_reply = m_nam->get(request);
    connect(m_reply, SIGNAL(metaDataChanged()), this, SLOT(onReplyMetaDataChanged()));
    connect(m_reply, SIGNAL(readyRead()), this, SLOT(onReplyReadyRead()));
    connect(m_reply, SIGNAL(finished()), this, SLOT(onReplyFinished()));
}
Example #2
0
void XMLHttpRequest::followRedirect(const QUrl &url) {
    Logger::log("XMLHttpRequest::followRedirect(): URL: " + url.toString());
    m_redirects++;
    m_response = QByteArray();
    m_reply = networkAccessManager()->get(QNetworkRequest(url));
    setReadyState(OPENED);
    connect(m_reply, SIGNAL(metaDataChanged()), this, SLOT(onReplyMetaDataChanged()));
    connect(m_reply, SIGNAL(readyRead()), this, SLOT(onReplyReadyRead()));
    connect(m_reply, SIGNAL(finished()), this, SLOT(onReplyFinished()));
}
Example #3
0
void Dialog::sendPacketToServer()
{
    qDebug("[Dialog::sendPacketToServer]");

    bool ok;
    int port = m_ui->portLineEdit->text().toInt(&ok);

    if (!ok) {
        showErrorMsg("Invalid port");
        return;
    }

    if (m_ui->serverIpLineEdit->text().isEmpty()) {
        showErrorMsg("Ip is empty");
        return;
    }

//     if (m_socket->peerAddress().isNull()) {
//         qDebug("eh?");
//         return;
//     }

    // TODO trasform in HTTP GET/POST/PUT requests
    QString req;
    int comboIndex = m_ui->commandCombo->currentIndex();

    if (comboIndex == 0) {                                      // ADD
        qDebug("[Dialog::sendPacketToServer] ADD");
    } else if (comboIndex == 1) {                               // BAN
        qDebug("[Dialog::sendPacketToServer] BAN");
    } else if (comboIndex == 2) {                               // IS_BANNED
        qDebug("[Dialog::sendPacketToServer] IS BANNED");
    } else if (comboIndex == 3) {                               // WHOIS
        qDebug("[Dialog::sendPacketToServer] WHOIS");
        req += prepareWhoisUrl();
    } else {
        return;
    }

    m_reply = m_netManager->get(QNetworkRequest(QUrl((req))));

    connect(m_reply, SIGNAL(finished()), this, SLOT(onReplyReadyRead()));
    connect(m_reply, SIGNAL(error(QNetworkReply::NetworkError)), this, SLOT(onReplyError(QNetworkReply::NetworkError)));

//     m_socket->writeDatagram(prepareMessage(), QHostAddress(m_ui->serverIpLineEdit->text()), port);
}
Example #4
0
void XMLHttpRequest::send(const QString &body) {
    Logger::log("XMLHttpRequest::send(): Body: " + body);
    
    switch (readyState()) {
    case HEADERS_RECEIVED:
    case LOADING:
        return;
    default:
        break;
    }

    m_redirects = 0;
    QBuffer *buffer = new QBuffer;
    buffer->setData(body.toUtf8());
    buffer->open(QBuffer::ReadOnly);
    m_reply = networkAccessManager()->sendCustomRequest(m_request, m_method, buffer);
    buffer->setParent(m_reply);
    connect(m_reply, SIGNAL(metaDataChanged()), this, SLOT(onReplyMetaDataChanged()));
    connect(m_reply, SIGNAL(readyRead()), this, SLOT(onReplyReadyRead()));
    connect(m_reply, SIGNAL(finished()), this, SLOT(onReplyFinished()));
}