delphi xe7 使用其余客户端上传/下载保管箱文件并显示进度

标签 delphi upload dropbox progress delphi-xe7

使用 xe7 rest 客户端,我能够进行身份验证并获取各种信息,例如文件列表、帐户信息等。
我现在如何上传和下载带有进度指示的文件?
如果有一些使用 的小文件示例,上传将非常有用。/files_put (最大文件大小 150MB)和更大的文件使用 /chunked_upload
Dropbox API

谢谢你!

最佳答案

您应该提供您有问题的任何代码。不要指望有人为你做这项工作。

至少给你一些提示:

根据您已经提到的文档,您将使用 IdHTTP 发送 PUT 请求。不要忘记在 REST 客户端的登录信息中添加标题“授权”。

IdHTTP.Put('https://api-...', FFileStream, FResponseStream);

这会阻塞你的主线程(UI),所以如果你想上传/下载并显示进度,你必须使用一个单独的线程——所以首先创建一个 TThread,在“工作”过程中你将运行上传/下载。

现在你必须处理进度。您可以在 IdHTTP 组件的 OnWork 事件中获得它。您将把这个状态从线程传递到主线程。不要忘记正确同步此调用 - 您可以为此使用 IdNotify。

谷歌会帮助你处理所有这些基本的东西。然后返回并描述任何问题。

关于delphi xe7 使用其余客户端上传/下载保管箱文件并显示进度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30144854/

相关文章:

delphi - TDictionary.ContainsKey 返回 false,即使键存在

delphi - 如何使用接口(interface)返回对象列表?

java - 如何使用 JMeter 在 JSF 应用程序中上传文件

php - 将多个文本文件上传到 MySQL

linux - 从服务器远程连接到 Dropbox 服务

javascript - 这是否(或应该)存在 : Js storage API to Cloud (Dropbox, 等),回退到本地(localStorage、cookies 等)

delphi - Delphi 中的实时麦克风?

delphi - 新的自定义组件导致 IDE 崩溃

mysql - cakephp 博客文章中缺少图像

git - git 分支的永久链接