【问题标题】:How to authenticate to a dropbox account and get a file with the PHP SDK?如何通过 PHP SDK 对 Dropbox 帐户进行身份验证并获取文件?
【发布时间】:2016-08-23 08:23:05
【问题描述】:

我正在整理一个从 Dropbox 帐户获取文件的小型 php 脚本。它用于将 CSV 数据导入客户的网站。

到目前为止,我使用 Dropbox 中的共享链接来执行此类任务,但现在数据不那么公开了,我想对我客户的帐户进行身份验证。

https://www.dropbox.com/developers-v1/core/sdks/php 和其他地方有一个教程,但我写了一个分步指南,希望对其他人开始使用 Dropbox API 有所帮助。

我使用了 PHP sdk,但可能所有其他 SDK 都非常相似。

那么,我如何对 Dropbox 帐户进行身份验证并获取文件内容?

【问题讨论】:

    标签: dropbox dropbox-api


    【解决方案1】:

    由于 API 1.x 已弃用,这里是 v2 的分步指南

    • 使用开发者的 Dropbox 帐户登录 Dropbox
    • 转到“Dropbox 应用程序控制台”https://www.dropbox.com/developers/apps 并注册一个应用程序(常规 Dropbox API)。适当地命名它;名称不能包含“Dropbox”。我选择了“MYVENDORNAMEGetFile”。该应用程序是您自己的脚本,它只是在这里注册。按照说明进行操作。选择“权限类型:应用文件夹”。 “状态:发展”很好;禁止 OAuth“隐式授权”
    • 由于没有官方的 PHP SDK,请从 https://github.com/kunalvarma05/dropbox-php-sdkcomposer require kunalvarma05/dropbox-php-sdk 获取维护良好的非官方 SDK。
    • 按照https://github.com/kunalvarma05/dropbox-php-sdk/wiki/Authentication-and-Authorization 的说明创建三个文件 login.php、header.php 和 login-callback.php 来制作一个迷你站点;用您的信息填写 header.php。
    • 将该迷你站点放在服务器上(不必与您使用令牌的位置相同)。
    • 在 Dropbox 应用控制台中将登录回调(例如 https://www.mydomain/dropboxauth/login-callback.php)的链接注册为“重定向 URI”。
    • 将 login.php 的链接提供给您的“用户”,并要求他们通过该链接进行身份验证。如果是您自己并且您使用不同的 Dropbox 帐户,请确保使用正确的帐户(使用各种浏览器)。
    • 请用户将返回的令牌传递给您(您也可以通过 php 将其通过电子邮件发送)并告诉他/她在哪里可以找到新创建的 Dropbox/Apps/MYVENDORNAMEGetFile 目录。
    • 您现在可以使用 App Key、App Secret 和 Token 进行身份验证和执行操作,例如获取https://github.com/kunalvarma05/dropbox-php-sdk/wiki/Upload-and-Download-Files中记录的文件内容

      // Configure Dropbox Application
      $app = new \Kunnu\Dropbox\DropboxApp($dropboxAppKey, $dropboxAppSecret, $dropboxToken);
      // Configure Dropbox service
      $dropbox = new \Kunnu\Dropbox\Dropbox($app);
      // Download Dropbox file
      $file = $dropbox->download('/'.$fileName);
      // File Contents
      $itemData = $file->getContents();
      

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-03
    • 2014-01-25
    • 2018-02-12
    相关资源
    最近更新 更多