Najpierw zdobądź token sesji.
$apikey = 'YOUR API KEY HERE';
$appid = 'APPLICATIONID';
$email = '[email protected]';
$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;
Teraz z tej nowej $session
kluczowego przesłania pliku.
$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);
Ważna uwaga: Proszę spróbować samemu. Nie testowałem tego. Właśnie zobaczyłem API i napisałem ten kod. Więc nie będzie działać za pierwszym razem. Będziesz musiał zmodyfikować, aby działało.
Podałeś odpowiedź na własne pytanie: http://developers.mediafire.com/index.php/REST_API, a dokładniej: http://developers.mediafire.com/index.php/REST_API#upload – Supericy