4

ソースからプレミアムRapidShareアカウントにログインするにはどうすればよいですか?私はこれを試しましたが、機能していません:

string authInfo = "name" + ":" + "pass";
authInfo = Convert.ToBase64String(Encoding.Default.GetBytes(authInfo));
client.Headers["Authorization"] = "Basic " + authInfo;

client.DownloadFile("url", "C:\\Temp\\aaaa.file");

また

WebClient client = new WebClient();

client.Credentials = new NetworkCredential("name", "pass");

client.DownloadFile("url", "C:\\Temp\\aaaa.file");

RapidShareプレミアムから直接ファイルをダウンロードする簡単な方法はありますか?

4

3 に答える 3

3

Fiddler を使用して、何が送信されているかを確認します。次に、クエリを再構築します。

ダウンロード マネージャーのログからヒントが得られる場合もあります。

于 2010-03-18T15:59:07.447 に答える
2

私の解決策があります。魅力のように働きます:

private void downloadFileAsync(string fileUrl)
        {
            string uriString;

            uriString = "https://ssl.rapidshare.com/cgi-bin/premiumzone.cgi";

            NameValueCollection postvals = new NameValueCollection();
            postvals.Add("login", "aaa");
            postvals.Add("password", "bbb");
            postvals.Add("uselandingpage", "1");

            WebClient myWebClient = new WebClient();

            Byte[] responseArray = myWebClient.UploadValues(uriString, "POST", postvals);

            StreamReader strRdr = new StreamReader(new MemoryStream(responseArray));

            string cookiestr = myWebClient.ResponseHeaders.Get("Set-Cookie");

            myWebClient.Headers.Add("Cookie", cookiestr);
            myWebClient.DownloadFileCompleted += new AsyncCompletedEventHandler(myClient_DownloadFileCompleted);
            myWebClient.DownloadFileAsync(new Uri(fileUrl),"C:\\Temp\\"+Path.GetFileName(fileUrl));
        }
于 2010-03-19T09:05:50.047 に答える
2

シンプルなrapidshareクラスを使用すると、車輪を再発明することなくタスクを実行できます...それ以外の場合は、rapidshareのAPIを確認してください.

于 2010-03-18T16:06:03.307 に答える