欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

如何使用MIME协议配合表单在iphone手机上下载文件?

程序员文章站 2022-04-25 08:37:51
...

做了一个在线下载音乐网站的工具,使用PHP编写,包含MIME协议中的Content-type&Content-Disposition,测试了电脑,安卓都可以正常下载,代码如下(测试用的,代码排版较乱希望多多包涵):
如何使用MIME协议配合表单在iphone手机上下载文件?

如何使用MIME协议配合表单在iphone手机上下载文件?

MP3格式的文件在浏览器中打开直接被浏览器解析播放了,这个在线工具的目的就是从一个网站获取链接(MP3格式)后通过MIME协议强制浏览器下载MP3文件而不是在线播放,假设好的网站地址为:http://www.w00yun.top/echo.php
如何使用MIME协议配合表单在iphone手机上下载文件?

这样输入链接直接就可以下载MP3格式的文件了且在电脑&安卓多浏览器均测试成功,但是拿到iphone上使用iphone自带的Safari浏览器下载就直接这样了:
如何使用MIME协议配合表单在iphone手机上下载文件?

只是PHP爱好者,并没有专业学过编程,也从没做过编程相关的工作,百度后得知iphone自带的浏览器是不可以随意下载东西的,然后使用iphone下的QQ浏览器下载是可以下载的,但是下载文件大小明显不对:
如何使用MIME协议配合表单在iphone手机上下载文件?

这样我就开始测试是哪儿出了问题,通过谷歌在oschina上看到说表单提交按钮的样式在Safari浏览器上无效
如何使用MIME协议配合表单在iphone手机上下载文件?

如何使用MIME协议配合表单在iphone手机上下载文件?

还以为是表单提交的问题,但是通过查看答案发现并不是我想要的答案,而且通过测试,如果注释掉MIME协议,直接通过表单提交输出获取到的下载链接是正常可以获取到的
如何使用MIME协议配合表单在iphone手机上下载文件?

由此判断并不是表单的原因,然后我又单独直接把链接赋值给变量,通过MIME协议下载发现也是可以正常下载的,歌曲大小正常也可以播放:
如何使用MIME协议配合表单在iphone手机上下载文件?

这样不管是获取下载链接还是通过MIME协议直接下载在iphone的QQ浏览器中都是可以的,但是通过表单提取链接再通过MIME下载就是不可以下载正常文件的,不知道是什么问题,希望可以帮忙解答一下,谢谢!

回复内容:

做了一个在线下载音乐网站的工具,使用PHP编写,包含MIME协议中的Content-type&Content-Disposition,测试了电脑,安卓都可以正常下载,代码如下(测试用的,代码排版较乱希望多多包涵):
如何使用MIME协议配合表单在iphone手机上下载文件?

如何使用MIME协议配合表单在iphone手机上下载文件?

MP3格式的文件在浏览器中打开直接被浏览器解析播放了,这个在线工具的目的就是从一个网站获取链接(MP3格式)后通过MIME协议强制浏览器下载MP3文件而不是在线播放,假设好的网站地址为:http://www.w00yun.top/echo.php
如何使用MIME协议配合表单在iphone手机上下载文件?

这样输入链接直接就可以下载MP3格式的文件了且在电脑&安卓多浏览器均测试成功,但是拿到iphone上使用iphone自带的Safari浏览器下载就直接这样了:
如何使用MIME协议配合表单在iphone手机上下载文件?

只是PHP爱好者,并没有专业学过编程,也从没做过编程相关的工作,百度后得知iphone自带的浏览器是不可以随意下载东西的,然后使用iphone下的QQ浏览器下载是可以下载的,但是下载文件大小明显不对:
如何使用MIME协议配合表单在iphone手机上下载文件?

这样我就开始测试是哪儿出了问题,通过谷歌在oschina上看到说表单提交按钮的样式在Safari浏览器上无效
如何使用MIME协议配合表单在iphone手机上下载文件?

如何使用MIME协议配合表单在iphone手机上下载文件?

还以为是表单提交的问题,但是通过查看答案发现并不是我想要的答案,而且通过测试,如果注释掉MIME协议,直接通过表单提交输出获取到的下载链接是正常可以获取到的
如何使用MIME协议配合表单在iphone手机上下载文件?

由此判断并不是表单的原因,然后我又单独直接把链接赋值给变量,通过MIME协议下载发现也是可以正常下载的,歌曲大小正常也可以播放:
如何使用MIME协议配合表单在iphone手机上下载文件?

这样不管是获取下载链接还是通过MIME协议直接下载在iphone的QQ浏览器中都是可以的,但是通过表单提取链接再通过MIME下载就是不可以下载正常文件的,不知道是什么问题,希望可以帮忙解答一下,谢谢!

相关标签: php