资讯动态

Automatisch 连接 Dropbox 完整指南:从创建 OAuth 应用到在流程中使用连接

发布时间:2026/9/14 9:38:28 来源:尧图企业网站定制
Automatisch 连接 Dropbox 完整指南从创建 OAuth 应用到在流程中使用连接【免费下载链接】automatischThe open source Zapier alternative. Build workflow automation without spending time and money.项目地址: https://gitcode.com/GitHub_Trending/au/automatisch本文以 Automatisch 仓库中的 Dropbox 连接文档connection.md为主体带你完成 Dropbox 连接的端到端配置在 Dropbox 开发者平台创建应用、在 Automatisch 中填入密钥并授权、理解背后完整的 OAuth 2.0 授权与令牌刷新机制最后在自动化流程中调用 Dropbox 的动作与触发器。前置准备在开始之前请确保你已经具备以下条件一个可访问的 Automatisch 实例本文涉及“复制 OAuth Redirect URL”“填写 App Key / App Secret”等操作均发生在 Automatisch 的 Web 界面中。部署方式可参考 安装指南。一个 Dropbox 开发者账号用于登录 Dropbox App Console 并创建应用。该链接正是原文档中给出的创建应用入口。了解 Automatisch 的“连接Connection”概念连接是 Automatisch 中保存第三方服务凭据如 OAuth 令牌的实体一个连接可以被多个流程复用。可参阅 凭据说明 加深理解。第一步在 Dropbox 开发者平台创建应用按照原文档的步骤进入 Dropbox 开发者后台完成应用创建打开 Dropbox 开发者应用创建链接点击创建new application新建应用。在Choose an API选择 API部分选择Scoped access限定范围访问选项。Scoped access 意味着应用只被授予你显式勾选的权限范围scope而不是对用户账号的全部权限这比全量访问更安全。在Choose the type of access you need选择所需的访问类型部分选择Full Dropbox选项。这代表应用可以访问用户 Dropbox 账号中的全部文件与文件夹而不是仅某个 App folder 内的沙箱空间。为你的应用命名Name your application。点击Create app创建应用按钮完成创建。进入应用后在 Automatisch 的 Dropbox 连接页面复制OAuth Redirect URL回到 Dropbox 应用后台的Redirect URIs重定向 URI字段中粘贴并添加。这是 OAuth 授权完成后回调的地址两边必须完全一致否则授权会失败。点击Permission type权限类型部分中的Scoped App链接进入权限范围管理页面。勾选files.content.write权限对应的复选框然后点击Submit提交按钮。该权限允许应用写入用户的 Dropbox 文件内容是下文“创建文件夹 / 创建文本文件 / 重命名文件”等写操作所必需的。回到Settings设置选项卡。复制App key粘贴到 Automatisch 的App key字段中。复制App secret粘贴到 Automatisch 的App secret字段中。在 Automatisch 上点击Submit提交按钮。大功告成现在你就可以在新的流程中使用这个 Dropbox 连接了。提示如果文档中的步骤与 Dropbox 官方后台的界面有出入请以 Dropbox 最新界面为准同时可以在 Automatisch 仓库提交 issue 反馈文档更新原文档也提示了这一点。第二步理解 Automatisch 侧的表单字段在 Automatisch 的 Web 界面中新建 Dropbox 连接时实际渲染的表单由后端源码定义。查看 auth/index.js 可以看到三个字段字段 Key界面标签类型是否只读说明oAuthRedirectUrlOAuth Redirect URLstring是readOnly默认值为{WEB_APP_URL}/app/dropbox/connections/add可直接点击复制用于填入 Dropbox 后台的 Redirect URIsclientIdApp Keystring否来自 Dropbox 应用后台 Settings 页clientSecretApp Secretstring否来自 Dropbox 应用后台 Settings 页其中oAuthRedirectUrl的description字段明确说明当 Dropbox OAuth 要求输入回调或重定向 URL 时就填入这个地址。它的默认值由占位符{WEB_APP_URL}拼接生成在实际实例中会被替换为你的 Automatisch 访问地址因此无需手动修改。第三步连接背后的 OAuth 2.0 机制源码解析配置好应用密钥并提交后Automatisch 会引导用户跳转到 Dropbox 完成授权。整个过程由 Dropbox 应用的四个 auth 模块驱动理解它们有助于排查连接问题。1. 生成授权 URLgenerate-auth-url当用户在 Automatisch 中发起连接时generate-auth-url.js 会构造 Dropbox 的 OAuth 授权地址const searchParams new URLSearchParams({ client_id: $.auth.data.clientId, redirect_uri: callbackUrl, response_type: code, scope: scopes.join( ), token_access_type: offline, }); const url ${$.app.baseUrl}/oauth2/authorize?${searchParams.toString()};关键参数含义client_id即你在 Automatisch 中填写的 App Keyredirect_uri即oAuthRedirectUrl字段值必须与 Dropbox 后台配置的 Redirect URI 完全一致response_type: code采用标准 Authorization Code 授权码模式scope由 scopes.js 中的固定范围列表拼接见下文token_access_type: offline申请离线访问令牌refresh token这是后续令牌自动刷新的前提。2. 权限范围scopesscopes.js 中定义了连接申请的全部权限const scopes [ account_info.read, files.metadata.read, files.content.write, files.content.read, ];可以看到除了原文档中要求你在 Dropbox 后台手动勾选的files.content.write之外还包含account_info.read读取账号信息用于校验连接有效性、files.metadata.read读取文件元数据和files.content.read读取文件内容。这解释了为何原文档第 8 步要专门勾选files.content.write——因为其余范围在 Automatisch 侧固定申请而该写权限需要你在 Dropbox 后台显式授予。3. 校验凭据并保存账号信息verify-credentials用户完成 Dropbox 授权页面跳转后Automatisch 会拿着授权码调用 verify-credentials.js 向https://api.dropboxapi.com/oauth2/token换取令牌const params { client_id: $.auth.data.clientId, redirect_uri: redirectUrl, client_secret: $.auth.data.clientSecret, code: $.auth.data.code, grant_type: authorization_code, };换回的响应中包含access_token、refresh_token、expires_in、scope、token_type、account_id、uid等字段会被完整保存到连接数据中。随后该模块还会调用getCurrentAccount拉取当前 Dropbox 账号资料姓名、邮箱、国家、账号类型、根命名空间 ID 等一并存入连接方便在流程中直接引用账号维度信息。4. 令牌刷新refresh-token与连接健康检查is-still-verified由于在授权 URL 中申请了token_access_type: offlinerefresh-token.js 可以在 access token 过期后用保存的 refresh token 静默换发新令牌。它使用 HTTP Basic 认证方式将App Key:App Secret进行 Base64 编码后放入Authorization请求头const basicAuthToken Buffer.from( ${$.auth.data.clientId}:${$.auth.data.clientSecret} ).toString(base64);同时请求会通过skipAddingAuthHeader: true跳过通用请求拦截器避免重复附加 Authorization 头。而 is-still-verified.js 则通过调用getCurrentAccount判断连接是否仍然有效——如果账号已无法访问返回值为空连接会被标记为失效界面会提示用户重新授权。5. 应用级定义与请求注入Dropbox 应用的整体定义位于 index.js其中几个关键配置值得注意authDocUrl: {DOCS_URL}/apps/dropbox/connectionAutomatisch 界面中的“查看连接文档”按钮会跳转到本文对应的文档页baseUrl: https://dropbox.com与apiBaseUrl: https://api.dropboxapi.com分别用于授权跳转与 API 调用beforeRequest: [addAuthHeader]每个对外请求都会经过 add-auth-header.js自动附加 Bearer Access Token因此在动作与触发器代码中无需手动处理认证头。第四步在流程中使用 Dropbox 连接连接创建成功后即可在流程编辑器中作为动作Action或触发器Trigger的输入使用。仓库源码actions/index.js 与 triggers/index.js与对应文档actions.md、triggers.md展示了 Dropbox 应用当前支持的全部能力。支持的动作Create a foldercreate-folder根据给定的父文件夹与文件夹名称创建新文件夹Create a text filecreate-text-file用你指定的纯文本内容创建新的文本文件Rename a filerename-file按给定的文件路径和新名称重命名文件。支持的触发器New files in foldernew-files-in-folder当指定文件夹中出现新文件时触发流程New foldersnew-folders当出现新文件夹时触发流程。典型用法举例例如用“New files in folder”触发器监听某个 Dropbox 文件夹一旦有新文件上传就串联其他应用的动作为其重命名或创建说明文件从而实现无人工干预的文件自动化处理。常见问题排查授权时报 redirect_uri mismatch检查 Dropbox 后台 Redirect URIs 是否与 Automatisch 连接表单中的 OAuth Redirect URL 完全一致包括结尾路径。提示权限不足 / 403回到 Dropbox 后台的 Scoped App 权限页面确认已勾选files.content.write等所需范围并在勾选后点击 Submit 保存。连接突然失效Automatisch 会通过is-still-verified定期校验连接若令牌刷新失败例如 App Secret 被重置或用户在 Dropbox 撤回了授权需要重新走一遍授权流程。令牌过期问题由于授权时申请了 offline 令牌且自动刷新已内置正常情况下无需手动干预刷新逻辑可参见 refresh-token.js。小结通过本文你完成了从 Dropbox 应用创建、权限勾选、密钥填写到 OAuth 授权的完整连接配置并理解了 Automatisch 如何通过授权码换取令牌、离线刷新令牌、校验连接有效性以及 Dropbox 连接可用的动作与触发器。接下来就可以在 Automatisch 的流程编辑器中拖拽使用 Dropbox 连接搭建属于你自己的文件自动化工作流了。【免费下载链接】automatischThe open source Zapier alternative. Build workflow automation without spending time and money.项目地址: https://gitcode.com/GitHub_Trending/au/automatisch创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价