zoukankan      html  css  js  c++  java
  • <C#>Dropbox APIs

    第一步,激活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

  • 相关阅读:
    关于线程池的线程复用
    Java线程锁之意难平的读写锁
    Java8之StringJoiner
    springboot整合thymeleaf
    一维数组转二叉树、注解回滚、eclipse配置代码自动补全
    Java之线程锁
    关于工作中的一些总结
    关于shiro的猜测
    Java之扫描不到mapper
    网页中引用css样式
  • 原文地址:https://www.cnblogs.com/virgil/p/3720056.html
Copyright © 2011-2022 走看看