将Dropbox API与Node.js一起使用

时间:2016-03-15 08:28:21

标签: javascript node.js dropbox dropbox-api

我正在使用MEAN框架处理Web应用程序,在该应用程序中,我想让用户能够上传文件。

现在是主要的事情:

  1. 所有用户上传的文件都应上传到SINGLE保管箱帐户(我的帐户)
  2. 他们只会上传最大尺寸为20MB的文件(我已经建立了上传前检查文件大小的功能)
  3. 我做了什么:

    我去了Dropbox开发者,我已经设置了我的应用程序。现在我可以访问我的appKey,appSecret以及访问令牌

    我的问题:

    1. 我是否可以连接一个Dropbox帐户(我的 帐户)到我的应用程序,并让我的应用程序中的用户访问从Dropbox上传/下载文件,但使用我的应用程序界面?
    2. 由于我已经拥有访问令牌,我或我应用中的每个用户仍然需要通过 OAUTH流程?
    3. 我是否可以将每个请求的访问令牌发送到Dropbox api 用户在我的应用上通过特定表单上传文件的时间吗?
    4. 如果您可以提供非常有帮助的示例或链接。

      更新

      我使用Dropbox开发者控制台上的以下按钮生成了我的令牌:

      enter image description here

1 个答案:

答案 0 :(得分:0)

假设:假设您的应用的用户是"合法的"并且他们不会做任何与您有关的Dropbox文件。

  1. 是的,确实如此。您可以将应用配置为Dropbox的使用者;当然,你的应用程序还必须确保应用程序的用户是合法的(用用户/密码登录等检查它们) - 注意:后果可能是任何未经授权的人都可以使用你的应用程序永久删除所有文件(或根据权限尽可能做坏事)

  2. 访问令牌是OAuth的一部分,因此当您说" process"时,我不确定您的意思。我会将您的问题解释为"如何刷新我的令牌?"。简单地说,在您的应用程序每次调用dropbox API之前,您都会检查访问令牌的到期时间:如果它仍然有效,您只需执行调用,否则请求新令牌。在这种情况下,您不需要刷新令牌:您正在使用的OAuth机制(或者根据OAuth术语授予流程,或者使用您的单词的'流程)称为& #34;客户端凭证授予流程"

  3. 见上文2)

  4. 一些链接:这里有一些overview授权流程。 该授权流程的Here a schema(注意:MS使用另一个名为&#34的组件; ActiveDirectory"授予权限;在您的情况下," Azure AD"以及"资源API& #34;只是" Dropbox服务器")