通过Dropbox Ruby API共享文件夹

时间:2011-02-26 10:36:58

标签: ruby-on-rails dropbox

我想通过Ruby API共享一个dropbox文件夹。 现在有可能还是有可能?

由于

2 个答案:

答案 0 :(得分:7)

总有一种方法,但在这种情况下,它需要您通过cURL以编程方式登录并来回传递所需的数据。我现在试图弄清楚这一点。

[编辑]

由于我仍然对这个帖子感兴趣,我会发布基本的说明,自从我这样做以后它可能已经改变了,但这是6个月前的工作。

1)您需要登录并记住您的cookie。

登录网址为(是)https://www.dropbox.com/login

您需要发布到登录页面的数据在下面表示为php数组,因为这是我使用的。

$loginData = array(
    't' => $loginToken,
    'login_email' => $_POST['input_from_email'],
    'login_password' => $_POST['input_from_email_password']
);

登录令牌是登录表单的一部分,用于阻止XSS,因此您需要从那里读取它并将其包含在表单帖子中,否则它将失败。

成功登录后,您需要使用网址https://www.dropbox.com/home的cURL读取HTML和标题并解析

preg_match("/.*TOKEN:(.*),.*/", $homeResponse, $homeResponseMatches); 

这会为下一个表单提取XSS令牌,该表单是提交并创建共享的表单。通过发布到网址https://www.dropbox.com/share_ajax/new来使用它。并且需要发布的数据是。

$createShareData = array(
    'emails' => $_POST['input_to_email'],
    'custom_message' => $_POST['input_message'],
    'folder_name' => $_POST['input_folder_name'],
    't' => $loggedInToken
);

'$ loggedInToken'是您从https://www.dropbox.com/home抓取的令牌。这将创建一个新文件夹,并与“电子邮件”字段中的电子邮件共享,该字段是逗号分隔的电子邮件地址列表。

玩得开心。

答案 1 :(得分:1)

我一直在搜索API和开发论坛,而且我不认为这是可能的(至少不是以任何直接的方式)。

http://forums.dropbox.com/topic.php?id=25478&replies=10

http://forums.dropbox.com/topic.php?id=22779