applescript - 如何通过 AppleScript 或其他脚本语言获取 Dropbox 共享链接 URL?

标签 applescript dropbox dropbox-api

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

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

最佳答案

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

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

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

    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 脚本来完成。

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

关于applescript - 如何通过 AppleScript 或其他脚本语言获取 Dropbox 共享链接 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22883492/

相关文章:

ios - 搜索栏内按钮的功能名称

objective-c - 像从 cmd+tab 一样获取 ProcessList

android - 建议与共享项目一起工作

ios - 如何在一个应用中授权多个 Dropbox 帐户?

objective-c - 如何加载驻留在我的应用程序文件夹中的文件的内容?

ios - 类型 'NSObject -> () -> ViewController' 的值没有成员 'dbRestClient'

applescript - cocoa 脚本: Integrating the Text Suite

Applescript:同时使用 "on open"和 "choose file"

django - 如何使用 Dropbox 作为 Django 媒体文件存储?

delphi - Delphi 的 Dropbox API?