从手机上传大文件

时间:2013-06-12 00:30:51

标签: http rest upload asp.net-web-api windows-phone-8

我正在尝试编写一个需要将大量数据上传回我的服务器的WP8应用程序。我的服务器在ASP.net上运行,并使用WebAPI实现REST。

我已经到了可以上传少量数据的地步,比如使用POST将2-5MB传输到Azure blob。现在,我正在考虑使用此处定义的后台传输API从手机中移动大约40-50MB的数据http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh202955(v=vs.105).aspx

手机API支持 -

过度蜂窝连接 - 5 MB,

通过电池供电的Wi-Fi连接 - 20 MB

通过外部电源进行Wi-Fi连接 - 100 MB

我正在努力理解的部分是 -

  1. MSDN kb文章建议服务器实现范围请求,这是公平的。但是,它没有说明一次可以分块多少。我的上传服务器配置可以根据请求大小进行无限制吗?
  2. 我希望让客户端尽可能“愚蠢”,并使用手机上现有的传输API。我担心的是我的服务器的性能以及如果我开始在服务器上看到大量流量,服务器上可用的内存量。有人能给我指点服务器最佳实践来接受大量数据吗?

1 个答案:

答案 0 :(得分:0)

BackgroundTranferRequest不支持Range标头。 see here

实施您自己的上传和下载客户端,您可以使用Range并绕过各种大小限制。