我们面临一个奇怪的问题,我们正在使用 Dreamfactory 存储在m4a类型的 iOS 设备中录制的音频文件,它工作正常并且上传没有问题。
我们在尝试从服务器访问音频文件时遇到问题,从存储在 dreamfactory 中的文件返回的内容类型是audio/x-m4a,当我在不同的服务器上上传相同的文件并访问内容时,iOS SDK 无法识别类型是音频/mp4,音频文件可以正常播放,没有任何问题。
我们无法确定问题所在。任何人都可以帮忙吗?
谢谢。
我们面临一个奇怪的问题,我们正在使用 Dreamfactory 存储在m4a类型的 iOS 设备中录制的音频文件,它工作正常并且上传没有问题。
我们在尝试从服务器访问音频文件时遇到问题,从存储在 dreamfactory 中的文件返回的内容类型是audio/x-m4a,当我在不同的服务器上上传相同的文件并访问内容时,iOS SDK 无法识别类型是音频/mp4,音频文件可以正常播放,没有任何问题。
我们无法确定问题所在。任何人都可以帮忙吗?
谢谢。
嗨@iphonic DreamFactory 不会以任何方式操作文件 MIME 类型。据我了解,mime 类型x-
前缀与 IETF 定义的非标准 MIME 类型一起使用,因此听起来底层 Web 服务器未配置为识别此 MIME 类型,因此为其添加了前缀x-
. 也许您可以修改您的 Web 服务器配置以将文件扩展名与所需的 MIME 类型相关联?例如,您可以使用 Apache 的AddType
指令来执行此操作:
https://httpd.apache.org/docs/2.4/mod/mod_mime.html#addtype
同样,NGINX 支持types
:
http://nginx.org/en/docs/http/ngx_http_core_module.html#types
作为最后的解决方案,您可以使用 DreamFactory 的后处理事件处理程序即时修改 MIME 类型:
http://wiki.dreamfactory.com/DreamFactory/Features/Scripting
编辑第 74 行/etc/nginx/mime.types
默认情况下,它将设置为:
audio/x-m4a m4a;
更改它,保存并运行
$ nginx -s reload