Подразумевается, что вы успешно зарегистрировали приложение с доступом к Яндекс Диску, получили токен и даже отправили запрос на получение ссылки для загрузки файла на Яндекс.Диск и записали этот url в переменную link. Теперь дело за малым, нужно только отправить файл PUT методом, но в этом и проблема, в официальной документации этому моменту почти не уделено внимания и вроде все делается довольно просто, так оно и есть на самом деле. Ниже представлен php код, который загрузит файл.
$file = '/полный/адрес/файла/который/хотите.загрузить'; $filename = basename($file); $link = $this->uploadLink('app:/' . $filename, true); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $link['href']); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT'); curl_setopt($ch, CURLOPT_POSTFIELDS, file_get_contents($file)); $answer = curl_exec($ch); $info = curl_getinfo($ch); curl_close($ch); if ($info['http_code'] != '201') { echo 'Error'; } else { echo 'OK'; }
при этом конструкция переменная app:/ скажет чтобы файл был загружен в корень директории вашего приложения.
comments powered by HyperComments