2011-12-08 57 views
4

我想通过使用DropNet客户端(C#版本的Dropbox CLient API)使用Dropbox Api操作文件。这是我的代码:Dropbox API“用户名”,“用户密码”

var client = new DropNetClient(APP_KEY,APP_SECRET); 
    client.Delete("/Public/test.txt"); 

但似乎我需要“USER TOKEN”和“USER SECRET”。我应该在哪里得到这两个? 更新: 我只需要操纵我自己的文件夹和我的共享文件夹中的文件。我已经有APP_KEY和APP_SECRET从对myApp页,我在哪里可以得到“用户令牌”和“用户的机密”

感谢

回答

6

当您创建您的Dropbox的网站应用程序,他们给你一个APP_KEY(标识你的应用程序)和一个APP_SECRET(如密码)。您基本上是通过投递箱注册您的应用程序,以便与其服务集成。

这里是一个概述: http://www.dropbox.com/developers/start/core

单击该页面中的 “我的应用” 链接。您必须创建或使用您的投递箱帐户登录。之后,您可以创建一个应用程序。给它一个名称和描述,选择访问文件夹或全部内容,然后单击确定。他们会在注册您的应用后为您提供关键和秘密。

编辑:

关于具体的C#DropNetClient,你应该取代 “APP_KEY” 和 “APP_SECRET” 与您的AppKey和appSecret串从该网站。

此链接勾画出的顺序很明确:

https://github.com/dkarzon/DropNet

_client = new DropNetClient("API KEY", "API SECRET"); 

例如:

// replace with given app key and secret from site 
_client = new DropNetClient("8oz68cz267t52fz", "mavm58321hrhejy"); 

一旦你有一个客户端对象,你需要弹出一个浏览器,并有用户用他们的用户帐户登录到下拉框。这是通过获取网址在该链接的第2步中介绍的。

var url = _client.BuildAuthorizeUrl(); 

既然用户已经登录,您可以通过同步或异步方法获得用户访问令牌。用户令牌启用了“记住我”功能,而无需用户重新进行身份验证,尤其是从您的应用程序存储您不应该执行的帐户/密码。这是一个证明他们已通过验证箱进行验证的令牌。从该链接的第3步开始:

// Sync 
var accessToken = _client.GetAccessToken(); //Store this token for "remember me" function 

// Async 
_client.GetAccessTokenAsync((accessToken) => 
    { 
     //Store this token for "remember me" function 
    }, 
    (error) => 
    { 
     //Handle error 
    });

请注意,var accessToken实际上是一个DropNet.Models.UserLogin对象。该对象包含:

public string Token { get; set; } 
    public string Secret { get; set; } 
+0

请参阅我的更新,我在myapp页面上有APP_KEY,APP_SECRET,但我可以在哪里获得“用户名”和“用户密码”? – icn

+0

我编辑并解答了你的问题。在示例中,这些是占位符字符串,您应该在注册应用程序时使用密钥和秘密字符串替换。 – bryanmac

+0

谢谢,我明白这些是APP_KEY和APP_SECRET。我怎样才能得到“用户名”,“用户密码”? – icn

1

用户令牌/秘诀就是你当用户给出通过基于浏览器的授权页面您的应用程序访问他们的Dropbox,描述如下:

https://www.dropbox.com/developers/core/authentication

Dropbox API旨在链接到每个用户的Dropbox。这听起来像你想要它链接到你的(开发人员拥有的)Dropbox,目前不支持。唯一的选择是通过deve环境中的auth流获取令牌,然后以某种方式将该令牌嵌入到应用代码中。保持嵌入式令牌的秘密将是一个挑战。此外,该嵌入式固定令牌将与您的Dropbox帐户相关联,并且您必须非常小心,永远不要将应用与您的帐户断开连接(通过https://www.dropbox.com/account#applications),否则令牌无效。

1

有一种新方法可以在不通过所有OAuth内容的情况下为自己的帐户获取令牌。在应用程序设置页面上,您会看到一个按钮“生成的访问令牌”。这会为您自己的帐户生成一个令牌。