我正在开发一个移动应用程序来将图片上传到服务器。在服务器端,我有C#和ServiceStack。我想知道是否有办法捕获上传过程的进度(通过HTTP POST multipart / form-data),并在每次请求的一大块到达时执行(通过另一个客户端通知其进度) Web Socket)。
我知道从上传客户端可以很容易地了解已经发送了多少数据,但我也希望在服务器端知道这些数据。任何帮助表示赞赏。
答案 0 :(得分:0)
无法在服务器上提供文件上传的进度更新,因为只有在服务器收到文件后才会调用像ServiceStack这样的HttpHandlers。
我会坚持使用客户端回调来报告上传服务器的进度,例如:
client.OnUploadProgress = (bytesWritten, total) =>
"Written {0}/{1} bytes...".Print(bytesWritten, total);
client.PostFileWithRequest<UploadResponse>(url, new FileInfo(path),
new Upload { CreatedBy = "Me" });