如何通过AppleScript或其他脚本语言获取Dropbox Shared Link URL?

时间:2014-04-05 16:21:36

标签: applescript dropbox dropbox-api

获取或派生Dropbox公共链接网址相当容易,但会暴露您的静态用户ID。有没有办法以编程方式获取共享链接URL?

我已经看到了对名为getShareURL()的Android功能的引用,但我正在寻找Mac OS X AppleScript或其他一些桌面脚本解决方案。

1 个答案:

答案 0 :(得分:2)

我最近需要从bash脚本执行此操作。这也适用于Mac OS X,因为它支持bash和curl实用程序:

  1. 转到Dropbox开发者控制台(https://www.dropbox.com/developers/apps),登录Dropbox帐户,然后点击"创建应用"按钮。在应用的设置中,滚动到OAuth2部分,然后点击"生成" "生成访问令牌"下的按钮。您需要此令牌才能访问Dropbox API。

  2. 在bash脚本中,插入以下内容:

  3.     DROPBOX_TOKEN="<your dropbox token generated in step 1>"
        FILENAME="<file you want to share>"
        JSON=`curl -s --header "Authorization: Bearer $DROPBOX_TOKEN" \
                      --header "Content-Type: application/json" \
                      --data "{\"path\": \"/$FILENAME\",\"settings\": {\"requested_visibility\": \"public\"}}" \ 
                      https://api.dropbox.com/2/sharing/create_shared_link_with_settings`
    

    这将返回包含有关链接信息的JSON响应。您需要解析JSON响应以获取url,您可以使用简单的sed或awk脚本执行该操作。

    注意:您从此处获得的链接可以公开共享,但请注意,您不能共享从开发者控制台获得的访问令牌。如果您的脚本可以由您以外的其他人(Dropbox帐户的所有者)访问,那么您需要采取其他步骤来使用OAuth对用户进行身份验证,而不是使用生成的令牌。就我而言,脚本在我的机器上运行,只是通过自动化过程发送生成的链接,因此除了我之外,任何人都看不到脚本。拥有该访问令牌的任何人都可以通过API完全控制您的Dropbox帐户,因此请像对待密码一样对待它。