2017-10-11 72 views
1

我使用的是HTML5下载属性,允许用户从S3下载的视频文件:什么S3 cors配置应该用于Firefox html5下载属性?

<a href="https://mybucket.s3.amazonaws.com/video.mp4" download="video.mp4">Download</a> 

这工作完全在Chrome和IE浏览器。从下面的问题,据我所知,Firefox的希望CORS启用,允许下载属性进行跨领域产地:

HTML5 download attribute not working when downloading from another server, even when Access-Control-Allow-Origin is set to all (*)

我已经使用以下方法使我的S3存储CORS:

http://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-cors-configuration.html

这是我CORS政策:

<CORSConfiguration> 
    <CORSRule> 
     <AllowedOrigin>*</AllowedOrigin> 
     <AllowedMethod>GET</AllowedMethod> 
     <MaxAgeSeconds>3000</MaxAgeSeconds> 
     <AllowedHeader>Authorization</AllowedHeader> 
    </CORSRule> 
</CORSConfiguration> 

火狐仍然没有不想下载视频。任何帮助,提示或建议将不胜感激。谢谢。

+0

你得到了什么错误?请分享一个屏幕截图或复制并粘贴这些错误。 – Kannaiyan

+0

当我点击使用Firefox的下载链接时,mp4视频在新标签中打开而不是下载。 – boblapointe

回答

0

您的CORS策略需要授权标题。将其更改为通配符。

在AllowedHeader变化<AllowedHeader>*</AllowedHeader>

0

有几个你需要做的检查,

确保内容类型是application/octet-stream。默认情况下,它是一样的,除非你改变它。

火狐处理MP4文件不同,

1. Enter about:config in the address bar 
2. Hit Enter 
3. Click I’ll be careful, promise! 
4. In the Search field, enter media.windows-media-foundation.enabled 
5. Double-click the True in the media.windows-media-foundation.enabled result to change it to False 
6. Close the browser tab 

然后Firefox将自动下载该文件。

参考:

https://jdrch.wordpress.com/2013/10/01/how-to-prevent-firefox-from-playing-direct-link-mp4-files-in-the-browser/

希望它能帮助。

+0

谢谢你的帮助。但要求所有用户更改他们的Firefox配置不是一种选择。 – boblapointe

相关问题