.NET Web API中File支持的音频Content-Type查询
.NET Web API返回音频文件的Content-Type说明
内置辅助类:MediaTypeNames
.NET内置了MediaTypeNames静态类,专门提供标准化的媒体类型常量,其中音频相关的类型都在MediaTypeNames.Audio嵌套类下,常用的包括:
MediaTypeNames.Audio.Mpeg→audio/mpeg(适配MP3等MPEG音频)MediaTypeNames.Audio.Wav→audio/wav(WAV格式)MediaTypeNames.Audio.Ogg→audio/ogg(Ogg Vorbis格式)MediaTypeNames.Audio.Webm→audio/webm(WebM音频)MediaTypeNames.Audio.Aac→audio/aac(AAC格式)
用这个类的常量替代手动输入字符串,能避免拼写错误,示例代码如下:
[HttpGet] public IActionResult Get() { var fileResult = File(wavAudioBytes, MediaTypeNames.Audio.Wav); return fileResult; }
官方认可的音频Content-Type范围
.NET并没有严格限制可用的音频Content-Type,只要是IANA标准定义的音频媒体类型,都可以直接作为参数传入File方法。除了上面提到的,常见的标准类型还有:
audio/flac(FLAC无损音频)audio/mp4(MP4容器音频)audio/amr(AMR音频)audio/opus(Opus音频)
这些类型符合HTTP规范,主流浏览器和客户端都能正确识别处理。
实用提示
- 优先使用
MediaTypeNames提供的常量,提升代码的可读性和可维护性。 - 如果需要使用较新的IANA标准音频类型,直接传入对应的字符串即可,.NET不会做额外限制,只要客户端支持就能正常工作。
内容的提问来源于stack exchange,提问作者Yousaf Wazir
相关产品推荐
相关产品推荐

