Не удается получить доступ к моей учетной записи Dropbox с php в Linux

#php #linux #dropbox #dropbox-api #dropbox-php

#php #linux #dropbox #dropbox-api #dropbox-php

Вопрос:

Я загружал dropbox-php-sdk. Хорошо, затем я пишу скрипт на php:

 <?php
require_once "dropbox-sdk-php-1.1.6/lib/Dropbox/autoload.php";

use Dropbox as dbx;

$dropbox_config = array(
    'key'    => 'fasgsasgas',
    'secret' => 'gasawggasg'
);

$appInfo = dbxAppInfo::loadFromJson($dropbox_config);
$webAuth = new dbxWebAuthNoRedirect($appInfo, "PHP-Example/1.0");

$authorizeUrl = $webAuth->start();
echo "1. Go to: " . $authorizeUrl . "<br>";
echo "2. Click "Allow" (you might have to log in first).<br>";
echo "3. Copy the authorization code and insert it into $authCode.<br>";

$authCode = trim('eadasfafasfasfasfffffasfasfsafsafsafsafsafafa');

list($accessToken, $dropboxUserId) = $webAuth->finish($authCode);
echo "Access Token: " . $accessToken . "<br>";

$dbxClient = new dbxClient($accessToken, "PHP-Example/1.0");

$accountInfo = $dbxClient->getAccountInfo();
print_r($accountInfo);
?>
  

Когда я запускаю этот скрипт, у меня есть вывод:

 root@iredmail:/var/www/test.tl# php test2.php
PHP Fatal error:  Uncaught exception 'Exception' with message 'The Dropbox SDK requires the cURL PHP extension, but it looks like you don't have it (couldn't find function "curl_init").  Library: "/var/www/test.tl/dropbox-sdk-php-1.1.6/lib/Dropbox/RequestUtil.php".' in /var/www/test.tl/dropbox-sdk-php-1.1.6/lib/Dropbox/RequestUtil.php:5
Stack trace:
#0 /var/www/test.tl/dropbox-sdk-php-1.1.6/lib/Dropbox/autoload.php(27): require_once()
#1 [internal function]: Dropboxautoload('DropboxRequest...')
#2 /var/www/test.tl/dropbox-sdk-php-1.1.6/lib/Dropbox/WebAuthBase.php(14): spl_autoload_call('DropboxRequest...')
#3 /var/www/test.tl/dropbox-sdk-php-1.1.6/lib/Dropbox/WebAuthNoRedirect.php(56): DropboxWebAuthBase->_getAuthorizeUrl(NULL, NULL)
#4 /var/www/test.tl/test2.php(14): DropboxWebAuthNoRedirect->start()
#5 {main}
  thrown in /var/www/test.tl/dropbox-sdk-php-1.1.6/lib/Dropbox/RequestUtil.php on line 5
  

Где, у меня ошибка? Мне нужно получить информацию об учетной записи. Но я не могу понять, где у меня ошибка.

Ответ №1:

Как указано в исключении, у вас не установлено расширение PHP cURL.

В зависимости от вашего дистрибутива Linux команда может отличаться, быстрый поиск в Google для «install php curl [дистрибутив]» даст вам ответ.

Если ваш дистрибутив использует apt-get, используйте следующее:

sudo apt-get install php5-curl

Не забудьте перезапустить apache.

Ответ №2:

Для использования Dropbox SDK необходимо установить расширение cURL… Согласно исключению.

Для Dropbox SDK требуется расширение cURL PHP, но, похоже, у вас его нет