delphi - 如何在delphi 10中跟踪NetHttpClient上传的进度?

标签 delphi httpclient progress

现在我将通过delphi 10中的Nethttpclient组件将文件发送到我的服务器,但我不知道上传时如何跟踪进度。如果我下载文件,我可以通过事件ReceiveData获取进度。 没有任何其他有用的函数或事件可以做到这一点,请帮我解决这个问题。(只有nethttpclient,因为我不使用Indy)

最佳答案

TNetHTTPClient 在上传期间不会公开任何类型的状态信息,除了 OnRequestComplete 之外。和 OnRequestError 。如果您需要有关上传数据进度的状态,您应该切换到另一个可提供您想要的进度报告类型的 HTTP 库。

话虽这么说,我可以看到使用 TNetHTTPClient 获取上传状态的唯一方法是使用 TStream 发布文件数据。从 TFileStream 派生自定义类并重写其 Read() 方法以读取文件数据并根据需要报告状态。

关于delphi - 如何在delphi 10中跟踪NetHttpClient上传的进度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45992613/

相关文章:

xml - Delphi XML - 从父节点获取值

string - 如何将使用 Windows 代码页 1251 编码的字符串转换为 Unicode 字符串

mysql - Lazarus 插入 sql 结果 int 字符串网格

C# HttpClient Cookie 和 session ID 问题

javascript - 显示一个进度条,显示表单提交的进度

delphi - 将 ActionScript 转换为 Delphi

java - HttpClient 设置 Kerberos 身份验证的凭据

java - Akka-http Java API 示例代码/文档

java - 防止 NaN 被 Hibernate 持久化

ios - 如何在文件上传时更新 UIProgressView