yandex
yandex copied to clipboard
скрипт
В скрипте много отсутствующих методов и классов. Зачем вылаживать обрезанный неработающий вариант? Как он тестировался в таком случае?
Каких ещё не существующих методов ?
Здравствуйте! Ну вот например такая ошибка когда создаю объект disk и пробую выполнить ->getContents()
Запрос я так понимаю выполняется классом Request кторый в свою очередь расширяет Curl
Message: Undefined property: Mackey\Yandex\Request::$http_status_code
так вот в Curl есть свойство $httpStatusCode а в Ваше либе используется в классе Request $this->http_status_code, в Request я свойства не наблюдаю, значит это с Curl но оно имеет немного другое название. Поправьте если я ошибся
Привет! Вы использовали composer ? Авторы php-curl-class, отрефакторили названия свойств - в связи с этим подобные проблемы. Воспользуйтесь вот этим https://github.com/jack-theripper/php-curl-class/archive/master.zip, из моего репозитория - это на случай таких вот важных переговоров =)) Возьмите из архива 2 файла из src/ и замените их в Вашем проекте в нужной папке, например vendor/Curl. Удачи!
Ага, спасибо!
Примеры не рабочие: $disk = new Arhitector\Yandex\Disk('OAuth-токен'); $resource = $disk->getResource('новый файл.txt');
Call to undefined method Arhitector\Yandex\Client\OAuth::getResource() В папке с примерами аналогично.
@reimax
Вы использовали master
ветку ?
$ composer require arhitector/yandex dev-master
composer require arhitector/yandex dev-master да, именно её согласно инструкции
Можно рабочий пример подключения + загрузки файла на диск?
@reimax если Вам не сложно, скопируйте часть кода, который вы пытаетесь использовать и лог ошибки, который генерирует php ?
require_once __DIR__.'/../vendor/autoload.php';
$disk = new Arhitector\Yandex\Disk($token);
// 'новый файл.txt' будет загружаться в корень диска
$resource = $disk->getResource('новый файл.txt');
$resource->upload('загрузить_этот_файл.txt');
Я выше дал кусок кода из примеров, их и использую. Блок 1.1.3. Пример использования Так вроде работает подключение:
require_once '/lib/yandex/vendor/autoload.php'; $client = new Arhitector\Yandex\Client\OAuth($yandex['app_yandex_token']); $disk = new Arhitector\Yandex\Disk($client);
только вот вызов $result = $disk->getResource('полный путь до файла/favicon.gif'); не дает никаких результатов.
@reimax попробуйте запросить информацию
var_dump($result->toArray());
Ваш кусок кода, который выше, получает объектно-ориентированную обертку для полный путь до файла/favicon.gif
и соответственно всё. Ознакомьтесь с 1.3.8. Работа-с-закрытыми-ресурсами
Из за кучи зависимостей крайне тяжело использовать этот код для написания модулей к CMS каким то, где невозможно лоадер компосера применить. И в итоге садишься и чертишь велосипед по новой.