1

私はこのAPIに慣れていないので、使い方がよくわかりません。C、PHP、またはAppleScriptでアプリケーションを作成して、ファイルがダウンロード可能かどうかを確認したいと思います。リクエストを正しく送信する方法を知る必要があります。

APIドキュメントを読みましたが、戻り値を取得する方法がまだわかりません。

誰か助けてもらえますか?

みなさん、おめでとうございます=)今からありがとうございます。

4

1 に答える 1

2

次のようなものを使用します。

http://api.rapidshare.com/cgi-bin/rsapi.cgi?sub=checkfiles_v1&type=prem&login=MY_USERNAME&
パスワード=MY_PASSWORD&ファイル=5044438&ファイル名=test1.rar

この呼び出しは、API ドキュメントによると、checkfiles_v1 サブルーチンを使用します。

サブルーチン=checkfiles_v1
説明: 指定されたファイルのリストに関するステータスの詳細を取得します。(files パラメータは 3000 バイトに制限されています。filenames パラメータは 30000 バイトに制限されています。)
パラメータ: files= ファイル ID のコンマ区切りリスト
             filenames=それぞれのファイル名のカンマ区切りのリスト。例: files=50444381,50444382 filenames=test1.rar,test2.rar
                incmd5=1 に設定されている場合、フィールド 7 はファイルの 16 進数の md5 です。これでポイント2倍!指定しない場合、すべての md5 値は 0 になります
返信フィールド:
        1:ファイルID
        2:ファイル名
        3:サイズ(バイト単位。サイズが0の場合、このファイルは存在しません。)
        4:サーバーID
        5:ステータス整数。次の数値を持つことができます。
            0=ファイルが見つかりません
            1=ファイル OK (匿名ダウンロード)
            2=File OK (ログなしの TrafficShare 直接ダウンロード)
            3=サーバーダウン
            4=違法としてマークされたファイル
            5=既に 10 回以上ダウンロードされているため、匿名ファイルはロックされています
            6=File OK (ログが有効になっている TrafficShare の直接ダウンロード。ログに記録される内容を確認するには、当社のプライバシー ポリシーをお読みください。)
        6:短いホスト (短いホストを使用して、最適なダウンロード ミラーを取得します: http://rs$serverid$shorthost.rapidshare.com/files/$fileid/$filename)
        7:md5 (上記のパラメーターの説明のパラメーター incmd5 を参照してください。)
返信フォーマット: 整数,文字列,整数,整数,整数,文字列,文字列

返信の Status を利用できます。その値が 1 の場合、ファイルがダウンロード可能であることを意味します。

PHP でのプログラムは次のとおりです。

ここをクリックしてサーバーの応答を確認してください

<?php

// This PHP script check if a file is publicly downloadable
// I've taken a sample file: 
// http://rapidshare.com/files/293360186/1597494240.pdf
// which at the time of wring is available + is downloadable.

// File ID
$file_id = '293360186';

// Filename
$file_name = '1597494240.pdf';

//construct the URL.
$URL = "http://api.rapidshare.com/cgi-bin/rsapi.cgi?sub=checkfiles_v1&files=$file_id&filenames=$file_name";

// Now get the response for this URL.
/* It looks something like:
   293360186,1597494240.pdf,6861070,59,1,gc,0 

   So we are just interested in field 5(Status), check if its 1(file downloadable) or 0
*/

$reply = file_get_contents($URL);
if(!$reply)
{
    die("Failed for $URL<br>");
}

$arr = explode(',',$reply);

if($arr[4] == 1)
    print "File $file_name is publicly downloadable<br>";
else
    print "File $file_name is not publicly downloadable<br>";

?>

お役に立てれば。

于 2009-12-27T02:26:48.023 に答える