ユーザーが既にサイトにサインインしている場合、認証を必要とせずにサイトからファイルをダウンロードする方法は? Cookie を渡す必要がありますか。どうやってするか?私はfirefoxブラウザを使用しています。正確なシナリオは次のとおりです。認証が必要なサイトがあります。ユーザーがブラウザーを介してサイトにログインした後、コードが flashgot アドオンによって提供される Cookie 文字列からその Cookie を取得し、認証が不要になるように、その Cookie を使用してポータルに get 要求を送信する必要があります。私はこれを試しました: 私は文字列を介してクッキーを渡しています,
cookie=rPopHome=1; FF_JoinPromo=true; __utma=140252452.845088738.1348089486.1348089486.1348089486.1; __utmb=140252452.6.10.1348089486; __utmc=140252452; __utmz=140252452.1348089486.1.1.utmcsr=adf.ly|utmccn=(referral)|utmcmd=referral|utmcct=/7hYuB; ff_membership=SlyL0JODTZMIdfYHy/7imBJHqyHhO9ZHNE4bwnFPzoGYgPVEEneUMsfqaFDsqR+w9EotIx9i7PPL7ZIp1CiUSOtx0Y4mE1GmxayYmnJVD/z5aCTS2qT7fTItiqOprW8rlsEYw2Br7OoETaF3L1RGRQai1zlFQw6QO9qBEPKXC7rOx5LuEEKYlrZFKvuD/m7uDc6SWDJyaW67sRfo/bpb/Q==; ff_referrer_hash=o7e2qf0;
request.setUrl(url);
request.setAttribute(QNetworkRequest::HttpPipeliningAllowedAttribute, true);
cookieJar->setCookiesFromUrl(QNetworkCookie::parseCookies(cookie),url.host());
manager.setCookieJar(cookieJar);
reply=manager.get(request);
しかし、次のエラーが表示されます。ダウンロードしたファイルには次のメッセージが含まれています。
<h1>HTTP/1.0 401 Unauthorized</h1>
<p>You have attempted to download via a Premium download link, but we could not verify your Premium account details.</p>
<p></h1>
ユーザーエージェントも変更しましたが、それでも失敗しました:
request.setRawHeader("User-Agent", "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:15.0) Gecko/20100101 Firefox/15.0.1");