<C#>Dropbox APIs
时间:2014-05-10 19:16:25
收藏:0
阅读:544
第一步,激活Drive API
首先,申请Dropbox的帐号;其次,在Dropbox for Developers上获得开发所需的App Key和App Sercet。
1、登录Dropbox for Developers网站;2、点击App Console选项,选择Create app;3、点击Send email for verification;4、通过电子邮件验证;5、在Create a new Dropbox Platform app上,选择Dropbox API app;6、填写信息并Create app,就将获得App key和App secret。
第二步,安装Dropbox Client Library
安装一个NuGet包(Dropnet)。如VS2012选择Tools项,再选NuGet Package Manager,接着Package Manager Console。在PM>中填写Install-Package dropnet -Pre。
第三步,编程
1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8 using System.Windows.Forms; 9 using DropNet; 10 11 namespace DropNetDemo 12 { 13 public partial class Form1 : Form 14 { 15 #region Var 16 private DropNetClient _dropNetClient; 17 #endregion 18 19 #region Private Property 20 private DropNetClient m_DropNetClient 21 { 22 get 23 { 24 return _dropNetClient ?? (_dropNetClient = new DropNetClient(tbxAppKey.Text, tbxAppSecret.Text)); 25 } 26 set 27 { 28 _dropNetClient = value; 29 } 30 } 31 #endregion 32 33 public Form1() 34 { 35 InitializeComponent(); 36 } 37 38 private void btnLogin_Click(object sender, EventArgs e) 39 { 40 var callbackUrl = "https://www.dropbox.com/1/oauth/authorize"; 41 var cancelCallbackUrl = "https://www.dropbox.com/home"; 42 var size = new Size(1024, 600); 43 44 if (DoOAuth(callbackUrl, cancelCallbackUrl, size) == DialogResult.OK) 45 { 46 var accessToken = m_DropNetClient.GetAccessToken(); 47 } 48 } 49 50 private DialogResult DoOAuth(string callbackUrl, string cancelCallbackUrl, System.Drawing.Size size) 51 { 52 using (var dialog = new Form()) 53 { 54 var browesr = new WebBrowser() 55 { 56 Dock = DockStyle.Fill 57 }; 58 59 m_DropNetClient.GetToken(); 60 var authUrl = m_DropNetClient.BuildAuthorizeUrl(); 61 browesr.Navigated += (s, ex) => 62 { 63 var url = ex.Url.ToString(); 64 if (url.Equals(callbackUrl)) 65 { 66 dialog.DialogResult = DialogResult.OK; 67 } 68 else if (url.Equals(cancelCallbackUrl)) 69 { 70 dialog.DialogResult = DialogResult.Cancel; 71 } 72 }; 73 browesr.Navigate(authUrl); 74 75 dialog.Size = size; 76 dialog.Controls.Add(browesr); 77 78 return dialog.ShowDialog(); 79 } 80 } 81 82 private void tbxAppKey_TextChanged(object sender, EventArgs e) 83 { 84 m_DropNetClient = null; 85 } 86 87 private void tbxAppSecret_TextChanged(object sender, EventArgs e) 88 { 89 m_DropNetClient = null; 90 } 91 } 92 }
最后,F5运行
源自:http://www.dotblogs.com.tw/larrynung/archive/2012/07/24/73580.aspx
http://www.dotblogs.com.tw/larry/nung/archive/2012/08/08/73912.aspx
评论(0)