1

我尽了最大努力从 uploading.com 下载文件,但一切都是徒劳的。我尝试了所有可能的重定向方式,但都是徒劳的。它总是以永久移动错误告终,如果您尝试重定向,它最终会下载网页。哼!

This is the cookie which i have to pass to QNetworkAccessManager:

S=gmail=gPwZoKGL8hgGA4ZHoej_Tg; S=gmail=xrWQCf29oq77myB3uSRKPg;

request.setUrl(url);
          request.setAttribute(QNetworkRequest::HttpPipeliningAllowedAttribute, true);
          cookieJar->setCookiesFromUrl(QNetworkCookie::parseCookies(cookie),url);
          manager.setCookieJar(cookieJar);
          reply=manager.get(request);

完成的信号调用以下槽

int statusCode=0;
            statusCode=reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();
           if(statusCode>300)
           {
               if(statusCode==307||reply->rawHeaderList().contains("Location"))
               {
                url=reply->header(QNetworkRequest::LocationHeader).toString();
                request.setUrl(url);
                request.setAttribute(QNetworkRequest::HttpPipeliningAllowedAttribute, true);
                cookieJar->setCookiesFromUrl(QNetworkCookie::parseCookies(cookie),url);
                manager.setCookieJar(cookieJar);
                reply=manager.get(request);
                return;
            }

下载失败,因为它下载的是网页而不是文件。url 和 cookie 由 flashgot 插件、firefox 提供。

4

1 回答 1

0

我认为如果“uploading.com”没有他们自己的原生 API:您将需要从他们的网站解析 html,然后编辑必要的 html,就好像您是他们网页上的用户来下载文件一样。

我需要更多关于您尝试过的内容以及您想做什么来回答这篇文章的信息。您应该首先检查他们是否有自己的 API。使用 Qt 绝对可以做到这一点。

于 2012-09-19T00:04:32.920 回答