微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在.Net Web API多部分表单请求中访问byte []数据

如何解决如何在.Net Web API多部分表单请求中访问byte []数据

我有一个请求,我的Web站点正在接收-通过查看导线架,我可以看到表单包含两个部分。

第一部分的类型为application/json,称为Metadata,第二部分的类型为audio/wav,称为media_audio_wav,两者的内容处置都设置为{{ 1}}。我无法控制传入的请求,因此我需要使其与所收到的内容一起工作。

我有一个这样声明的控制器方法

form-data

在上面,public async Task<IActionResult> MyControllerMethod([FromForm] MyModelClass jsonInput) { await _myClass.DoSomeBusinessLogic(jsonInput); return Ok(); } 是JSON部分成功绑定到的类。我要弄清楚的是如何获取名为MyModelClass的{​​{1}}字段。我尝试添加第二个byte[]参数,但这似乎不起作用。我还尝试过简单地在模型类中声明一个具有正确名称media_audio_wav类型的字段,该字段也不起作用。

如果在我的字符串类型的模型类中声明一个字段,则.NET模型绑定器将绑定到该字段,但是由于数据是二进制的,当将其转换为字符串时,音频会损坏,因为字符串无法表示二进制数据正确。因此,我需要获取原始二进制文件而无需先将其转换为字符串。我不能使用[FromForm],因为在二进制数据上没有指定文件名。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。