Tag: angularjs typescript

使用AngularJS和ASP.NET Web API上载/下载字节数组

我花了几天时间研究和研究上传/下载byte []的解决方案。 我很接近,但有一个问题似乎出现在我的AngularJS代码块中。 在SO上有一个类似的问题,但它没有回应。 请参阅https://stackoverflow.com/questions/23849665/web-api-accept-and-post-byte-array 以下是在我陈述问题之前设置上下文的一些背景信息。 我正在尝试创建一个通用的客户端/服务器接口来上传和下载byte [],它们被用作专有服务器数据库的一部分。 我在客户端上使用TypeScript,AngularJS,JavaScript和Bootstrap CSS来创建单页面应用程序(SPA)。 我在服务器上使用ASP.NET Web API / C#。 正在开发SPA以取代Silverlight中开发的现有产品,因此它受现有系统要求的限制。 SPA还需要针对各种设备(移动设备到桌面设备)和主要操作系统。 在几个在线资源(下面列出)的帮助下,我已经完成了大部分代码。 我在下面的Byte Rot链接中使用异步多媒体格式化程序来实现byte []。 http://byterot.blogspot.com/2012/04/aspnet-web-api-series-part-5.html 从ASP.NET Web API中的控制器返回二进制文件 我在客户端使用转换为Uint8Array的jpeg作为我的测试用例。 实际的系统字节数组将包含压缩成预定义数据包的混合内容。 但是,我需要能够处理任何有效的字节数组,因此图像是一个有效的测试用例。 使用下面显示的客户端和服务器代码以及Byte Rot Formatter(未显示但在其网站上提供)将数据正确地传输到服务器。 我已经validation了jpeg在服务器上作为byte []和字符串参数元数据正确接收。 我使用Fiddler来validation是否将正确的响应发送回客户端。 大小是正确的 图片可在Fiddler中查看。 我的问题是下面显示的Angular客户端代码中的服务器响应不正确。 如果不正确 ,我的意思是错误的大小(~10K对比~27.5K)并且它不被识别为UintArray构造函数的有效值 。 当我将光标放在下面客户端代码中显示的返回“响应”上时,Visual Studio显示JFIF,但没有其他可见的内容指示符。 / **********************服务器代码************************ / 在[FromBody] byte []之后为代码添加了缺少的项目 public class ItemUploadController : ApiController{ [AcceptVerbs(“Post”)] public […]