代码之家  ›  专栏  ›  技术社区  ›  Piduna Valeriu

无法从linux中的php访问我的Dropbox帐户

  •  0
  • Piduna Valeriu  · 技术社区  · 8 年前

    我下载了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 = dbx\AppInfo::loadFromJson($dropbox_config);
    $webAuth = new dbx\WebAuthNoRedirect($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 dbx\Client($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]: Dropbox\autoload('Dropbox\Request...')
    #2 /var/www/test.tl/dropbox-sdk-php-1.1.6/lib/Dropbox/WebAuthBase.php(14): spl_autoload_call('Dropbox\Request...')
    #3 /var/www/test.tl/dropbox-sdk-php-1.1.6/lib/Dropbox/WebAuthNoRedirect.php(56): Dropbox\WebAuthBase->_getAuthorizeUrl(NULL, NULL)
    #4 /var/www/test.tl/test2.php(14): Dropbox\WebAuthNoRedirect->start()
    #5 {main}
      thrown in /var/www/test.tl/dropbox-sdk-php-1.1.6/lib/Dropbox/RequestUtil.php on line 5
    

    在哪里,我有一个错误?我需要获取帐户信息。但我不明白,我犯了错误。

    2 回复  |  直到 8 年前
        1
  •  0
  •   Daniel    8 年前

    例外情况是,您没有安装PHP cURL扩展。

    根据您的linux发行版,命令可能会有所不同,快速搜索“install php curl[distro]”会得到答案。

    如果您的发行版使用apt get,请使用以下选项:

    sudo apt-get install php5-curl

        2
  •  0
  •   user2924019 Bob Vale    8 年前

    您需要安装cURL扩展才能使用Dropbox SDK…根据例外情况。

    Dropbox SDK需要cURL PHP扩展,但看起来您没有