JPEG大小作为Web API的字节数组

时间:2014-05-21 12:43:56

标签: c# windows-phone-8 asp.net-web-api

我正在尝试将jpeg作为字节数组从手机发送到Web API。最初,手机拍摄的图像大约为2mb,尺寸为2000x3500,因此我将其缩小到大约300x500尺寸,这使图像尺寸降至约135k。

如果不使用WiFi,应用程序仍然需要大约10秒左右通过下面的代码将其发送到Web API,有时它只是失败(由于我相信的大小,或某处的超时)。

HttpResponseMessage response = await client.PostAsJsonAsync("api/Send", msg);

我有没有办法压缩jpeg,以便我可以通过手机将其发送到WebAPI而不会变得很小?

我正在传输一些其他信息以及对象中的字节数组,例如用户ID等。

感谢您的任何指示!

2 个答案:

答案 0 :(得分:0)

我认为您可以在网络API中启用缓冲。这可能会帮助您加快上传速度。用于在Web API中启用缓冲的界面是IHostBufferPolicySelector

我没有尝试过,但这link可能对您有帮助。

答案 1 :(得分:0)

我没有找到任何方法让转移更快。 Windows Phone有两个选项。实现"发送"通知并保持UI ...但这并不能阻止他们退出应用程序。

BackgroundUploader类是另一种方法,但仅适用于Windows Phone 8.1,您只能上传文件,而不能上传文件; http://msdn.microsoft.com/library/windows/apps/windows.networking.backgroundtransfer.backgrounduploader.aspx