コード例 #1
0
ファイル: linkstatus.cpp プロジェクト: serghei/kde3-kdewebdev
QString const LinkStatus::toString() const
{
    QString aux;

    if(!is_root_)
    {
        Q_ASSERT(parent_);
        aux += i18n( "Parent: %1" ).arg( parent()->absoluteUrl().prettyURL() ) + "\n";
    }
    Q_ASSERT(!original_url_.isNull());

    aux += i18n( "URL: %1" ).arg( absoluteUrl().prettyURL() ) + "\n";
    aux += i18n( "Original URL: %1" ).arg( originalUrl() ) + "\n";
    if(node())
        aux += i18n( "Node: %1" ).arg( node()->content() ) + "\n";

    return aux;
}
コード例 #2
0
ファイル: Downloader.cpp プロジェクト: CassianoViana/JamTaba
//handling http redirection: http://stackoverflow.com/questions/14809310/qnetworkreply-and-301-redirect
void Downloader::httpClientReplyFinished(QNetworkReply *reply){

    if(!redirectUrl.isEmpty()){//avoid redirect loops
        return;
    }

    redirectUrl = reply->attribute(QNetworkRequest::RedirectionTargetAttribute).toString();

    if(!redirectUrl.isEmpty() && redirectUrl != this->downloadUrl) { //we're being redirected?

        QUrl originalUrl(downloadUrl);
        QUrl resolvedUrl = originalUrl.resolved(redirectUrl);
        qDebug() << "Redirecting...";
        doHttpRequest(resolvedUrl.toString());//We'll do another request to the redirection url.
    }
    else{
        redirectUrl.clear();
    }
}