原文:http://coderbee.net/index.php/go/20130829/427
用Dropbox Go SDK 做的一个上传文件到Dropbox的小应用。
获取appKey和设置回调地址
到这个页面https://www.dropbox.com/developers/apps 创建一个应用,应用的类型选择Dropbox API app,在这个页面还可以选择应用能访问的数据范围。
应用创建好后就可以在详细页面查看它的的App key,也就是下面要用的。
在应用的详细页面,还要设置授权后的回调地址,也就是“ OAuth redirect URIs ”的输入框,这个地址必须是合法的URL,哪怕是不存在的,也就是,可以设置成“https://127.0.0.1/oauth2/authorized”。
获取授权码
将上面得到的appKey和回调地址拼接成下面这样: https://www.dropbox.com/1/oauth2/authorize?response_type=token&client_id=abc1234569XYZ&redirect_uri=https://127.0.0.1/oauth2/authorized
里面的client_id的值填appKey,redirect_uri填回调地址,把这个地址拷贝到浏览器打开,如果你还没有登录Dropbox,会提醒你登录,登录后大概是这样的界面:
点击“允许”授权成功后,浏览器会调整,地址栏里的地址会变,拷出来大概是这样的: https://127.0.0.1/oauth2/authorized#access_token=O_xxkdkdkdw2yeidikcppdfdoiffjj&token_type=bearer&uid=158130000
上面的access_token: O_xxkdkdkdw2yeidikcppdfdoiffjj
就是代码要用的。
调用Go SDK
var (
tokens = map[string]string{
"access_token": "O_xxkdkdkdw2yeidikcppdfdoiffjj",
"token_type": "bearer",
}
)
func main() {
flag.Parse()
args := flag.Args()
if len(args) < 2 {
fmt.Printf("Usage: godropbox path/to/locale/file /path/at/dropbox\n")
return
}
oauth2 := &oauth2.OAuth2{AccessToken: tokens["access_token"], TokenType: tokens["token_type"]}
dropboxApi := &dropbox.DropboxApi{Signer: oauth2, Root: "dropbox", Locale: "CN"}
localePath, remotePath := flag.Arg(0), flag.Arg(1)
_, err := dropboxApi.UploadByChunked(localePath, remotePath, 10485760, 8)
if err != nil {
fmt.Printf("error msg: %s\n", err)
os.Exit(1)
} else {
os.Exit(0)
}
}
用 go build
命令构建成一个可执行文件。在我的VPS上使用: godropbox path/to/locale/file /path/at/dropbox
,效果还行。
以前用Java SDK写过一个上传的功能,文件上传完了还要很久才退出。
Go程序是编译成单个可执行文件的,不再需要处理依赖啥的。
相关推荐
**dropbox-sdk-java** 是一个专门为Java开发者设计的开源库,它使得与Dropbox的核心API进行交互变得简单而直观。这个库提供了全面的功能,包括文件上传、下载、管理,以及目录操作,同步,权限控制等,使开发人员...
Dropbox Core SDK for Java 6 A Java library to access Dropbox's HTTP-based Core API v2. This SDK also supports the older Core API v1, but that support will be removed at some point. License: MIT ...
dropbox-sdk-go-unofficial, Go的非官方 Dropbox SDK 面向 [UNOFFICIAL] 的 Dropbox 用于与Dropbox集成的非官方 ... 使用 go 1.5 测试这菊花什么意思这里没有正式的Dropbox支持Bug 可能也可能无法修复并非所有的SDK功能
上传的是源码包,不清楚的 私信 ..........
首先,我们要明确的是,"dropbox-android-sdk-1.6.3"是Dropbox针对Android平台提供的一个软件开发工具包(SDK),它包含了所有必要的库和资源,以便开发者能够轻松地在自己的应用程序中实现与Dropbox的交互。...
官方的Dropbox SDK for Javascript。 可以在上文档安装通过创建应用通过安装$ npm install --save dropbox从源安装: $ git clone https://github.com/dropbox/dropbox-sdk-js.git$ cd dropbox-sdk-js$ npm install...
这个库是基于Dropbox JavaScript SDK构建的,该SDK是一个轻量级且使用Promise实现的API接口,适用于node.js和浏览器环境,使得开发者能够方便地在不同平台上与Dropbox云存储服务进行交互。 在React Native应用中...
可以在通过Developer Console.Install中获取Python.Documentation的offical Dropbox SDK。通过Pip,通过PIP获取应用程序,可以找到:.install从源代码:。在安装中,安装,按照我们的一个示例或阅读文档读取文档 。...
适用于Python的正式Dropbox SDK。 可以在“找到。安装通过创建应用。 通过安装: $ pip install dropbox 从源安装: $ git clone git://github.com/dropbox/dropbox-sdk-python.git$ cd dropbox-sdk-python$ python ...
用于DotNet的官方Dropbox SDK。 可以在上找到文档 安装 通过创建应用 通过安装 PM> Install-Package Dropbox.Api 安装后,请遵循我们的或阅读。 您还可以查看我们的。 例子 我们提供以帮助您开始使用SDK中的许多...
1. **Dropbox Android SDK**:这是Dropbox为Android平台提供的开发工具包,它允许开发者通过Java编程语言与Dropbox API交互。SDK提供了一系列的类和方法,如`DropboxAPI`, `Entry`, `Session`, `AuthActivity`等,...
Dropbox Android SDK 使用入门 在您的构建脚本中包含该库。 请参阅 Maven/Gradle 部分。 您需要首先使用您的消费者密钥和秘密创建一个 AndroidAuthSession。 使用您的会话创建一个 DropboxAPI 对象。 开始开发您...
适用于Java的Dropbox Core SDK 8+ 一个Java库,用于访问 。 该SDK还支持较早的 ,但有时会删除该支持。 执照: 文档: 设置 如果您使用的是Maven,则编辑项目的“ pom.xml”并将其添加到部分: < groupId>...
`Laravel-Dropbox`库就是将这两者结合的桥梁,使得在Laravel项目中使用Dropbox API变得简单易行。 首先,我们需要安装`Laravel-Dropbox`包。你可以通过Composer,PHP的依赖管理工具,来完成这个任务。在命令行中,...
适用于Ruby的Dropbox SDK 这是一个小的Ruby库,用于访问新的 。 它提供了一个单独的类Dropbox::Client ,其类具有映射到大多数Dropbox API端点的方法。 当前,支持auth , files和users命名空间中的所有端点。 已...
用于Rust的Dropbox SDK Rust绑定到Dropbox APIv2,由Stone根据官方规范生成。 用于生成代码的Stone SDK和Dropbox API规范分别位于stone和dropbox-api-spec子模块中。使用git submodule init和git submodule update...
jar包,官方版本,自测可用
适用于PHP的Dropbox SDK v2 与一起使用的非官方PHP SDK。开始使用转至“Wiki”部分进行安装和入门。API文件执照Dropbox PHP Client已获得MIT许可证(MIT)的许可。
Dropbox 核心 API SDK 语言:Xojo 所有版本(桌面) 作者:Mike Cotone 许可:BSD-3-Clause - 请自担风险使用 这个项目是什么? 这个开源项目源于需要直接(而不是通过同步服务)与 Dropbox 进行程序集成。 这...
用于在iOS或macOS上与Dropbox 集成的官方Dropbox Objective-C SDK。 完整的文档。 注意:请不要在生产中依靠master 。 请改用我们标记的(最好通过CocoaPods或Carthage获取),因为这些提交已经过更彻底的测试。 ...