8

数日前にmediafireAPIを見つけました。

http://developers.mediafire.com

とにかくインターネットで検索して、APIを使用してmediafireアカウントにファイルをアップロードするためのWebアプリを作成します。残念ながら何も見つかりませんでした。mediafireAPIとPHPを使用してファイルアップロードWebアプリを作成する方法を知っている人はいますか。

4

1 に答える 1

12

まず、セッショントークンを取得します。

$apikey = 'YOUR API KEY HERE';
$appid = 'APPLICATIONID';
$email = 'your@email.com';
$passwd = 'PASSWORD';
$params = http_build_query(array(
   'email' => $email,
   'password'=> $passwd,
   'application_id' => $appid,
   'signature' => sha1("$email$passwd$appid$apikey"),
   'response_format' => 'json'
));
$fp = fopen('https://www.mediafire.com/api/user/get_session_token.php?'.$params, 'r');
$json = stream_get_contents($fp);
$obj = json_decode($json);
fclose($fp);

$session = $obj->response->session_token;

この新しい$sessionキーを使用して、ファイルをアップロードします。

$filecontents = file_get_contents("/path/to/file");
$filesize = strlen($filecontents);
$opts = array(
  'http'=>array(
    'method'=>"POST",
    'header'=> "x-filename : ANYFILENAMEYOUWANT\r\n".
               "x-filesize : $filesize\r\n"
  )
);
$context = stream_context_create($opts);
$params = http_build_query(array(
    "session_token" => $session
));
$fp = fopen('http://www.mediafire.com/api/upload/upload.php?'.$params, 'r', false, $context);
fwrite($fp, $filecontents);
$result = stream_get_contents($fp);
fclose($fp);

重要な注意:自分で試してみてください。私はそれをテストしていません。APIを見て、このコードを書きました。したがって、最初は機能しません。それを機能させるには、変更する必要があります。

于 2012-12-27T10:51:32.017 に答える