2012-01-09 2 views
2

Я продолжаю получать проблемы с dropbox php api, я просто пытаюсь заставить его работать с помощью getmeta. но я продолжаю получать следующую ошибку ??Dropbox php api issues

Я думаю, что проблемы здесь.

public function getToken($email, $password) { 

     throw new Dropbox_Exception('This API method is deprecated as of the version 1 API'); 

    } 

вот мой код.

$consumerKey = 'oksergerg1x1r'; 
$consumerSecret = 'zexb0rg6h54tgzzb'; 

require($_SERVER['DOCUMENT_ROOT'] . '/wp/includes/Dropbox/autoload.php'); 

//session_start(); 
$oauth = new Dropbox_OAuth_Wordpress($consumerKey, $consumerSecret); 

echo "<pre>"; 
print_r($oauth); 
echo "</pre>"; 

// If the PHP OAuth extension is not available, you can try 
// PEAR's HTTP_OAUTH instead. 
// $oauth = new Dropbox_OAuth_PEAR($consumerKey, $consumerSecret); 

$dropbox = new Dropbox_API($oauth); 

$tokens = $dropbox->getToken('[email protected]', 'secretpassword'); 

// You are recommended to save these tokens, note that you don't 
// need to save the username and password, so just ask your user the 
// first time and then destroy them. 

echo "Tokens:\n"; 
print_r($tokens); 

так что я говорю, что функция getToken обесценилась так, что мы должны использовать вместо этого?

UPDATE

Ok жаль Googled ABIT и я вижу, что новая версия не поддерживает getTokens больше, даже если они находятся в примерах еще по какой-то причине.

Так что теперь я смущен.

Я пытаюсь настроить приложение, чтобы люди могли вводить свой почтовый ящик и пароль. Затем он вытащит все свои метаданные из своей учетной записи.

С новым кодом, как я могу дать пользователю доступ? если у них нет электронной почты и пароля, как я могу получить их правильные жетоны ???

Извините, я действительно смущен этим, сейчас работаю последние два дня, пытаясь разобраться в этом.

+0

Вы не согласны с публикацией ссылки на API Dropbox? –

+0

@ JanHančič Библиотека, о которой идет речь, находится по адресу http://www.dropbox-php.com/ –

ответ

1

Взгляните на модульные тесты. Они должны рассматриваться как более современные примеры использования библиотеки. Dropbox отказался от некоторых элементов аутентификации в последней версии API, поэтому нам пришлось отказаться от этого в библиотеке. В моем списке обновляется документация и примеры, я просто очень занят.

В принципе, вам нужно сделать следующее:

На вашем OAuth класса провайдера, звоните:

$tokens = $oauth->getRequestToken();

Затем перенаправить пользователя на $oauth->getAuthorizeUrl(), чтобы они могли проверить подлинность с Dropbox и одобрить доступ ,

Наконец, вызов:

$tokens = $oauth->getAccessToken(); 
$oauth->setToken($tokens); 

Вы можете хранить $tokens где-то для будущего использования в подключении. Что вы будете использовать, позвонив по телефону:

$oauth->setToken($tokens); 
$dropbox = new Dropbox_API($oauth); 

Надеюсь, что это поможет. Вы можете сделать больше (например, предоставить URL-адрес обратного вызова для Dropbox для перенаправления пользователя). Просто проверьте файл APITests.php и файл установки в каталоге тестов источника: https://github.com/Dropbox-PHP/dropbox-php/tree/master/tests