如何使用MIME协议配合表单在iphone手机上下载文件?
做了一个在线下载音乐网站的工具,使用PHP编写,包含MIME协议中的Content-type&Content-Disposition,测试了电脑,安卓都可以正常下载,代码如下(测试用的,代码排版较乱希望多多包涵):
MP3格式的文件在浏览器中打开直接被浏览器解析播放了,这个在线工具的目的就是从一个网站获取链接(MP3格式)后通过MIME协议强制浏览器下载MP3文件而不是在线播放,假设好的网站地址为:http://www.w00yun.top/echo.php
这样输入链接直接就可以下载MP3格式的文件了且在电脑&安卓多浏览器均测试成功,但是拿到iphone上使用iphone自带的Safari浏览器下载就直接这样了:
只是PHP爱好者,并没有专业学过编程,也从没做过编程相关的工作,百度后得知iphone自带的浏览器是不可以随意下载东西的,然后使用iphone下的QQ浏览器下载是可以下载的,但是下载文件大小明显不对:
这样我就开始测试是哪儿出了问题,通过谷歌在oschina上看到说表单提交按钮的样式在Safari浏览器上无效
还以为是表单提交的问题,但是通过查看答案发现并不是我想要的答案,而且通过测试,如果注释掉MIME协议,直接通过表单提交输出获取到的下载链接是正常可以获取到的
由此判断并不是表单的原因,然后我又单独直接把链接赋值给变量,通过MIME协议下载发现也是可以正常下载的,歌曲大小正常也可以播放:
这样不管是获取下载链接还是通过MIME协议直接下载在iphone的QQ浏览器中都是可以的,但是通过表单提取链接再通过MIME下载就是不可以下载正常文件的,不知道是什么问题,希望可以帮忙解答一下,谢谢!
回复内容:
做了一个在线下载音乐网站的工具,使用PHP编写,包含MIME协议中的Content-type&Content-Disposition,测试了电脑,安卓都可以正常下载,代码如下(测试用的,代码排版较乱希望多多包涵):
MP3格式的文件在浏览器中打开直接被浏览器解析播放了,这个在线工具的目的就是从一个网站获取链接(MP3格式)后通过MIME协议强制浏览器下载MP3文件而不是在线播放,假设好的网站地址为:http://www.w00yun.top/echo.php
这样输入链接直接就可以下载MP3格式的文件了且在电脑&安卓多浏览器均测试成功,但是拿到iphone上使用iphone自带的Safari浏览器下载就直接这样了:
只是PHP爱好者,并没有专业学过编程,也从没做过编程相关的工作,百度后得知iphone自带的浏览器是不可以随意下载东西的,然后使用iphone下的QQ浏览器下载是可以下载的,但是下载文件大小明显不对:
这样我就开始测试是哪儿出了问题,通过谷歌在oschina上看到说表单提交按钮的样式在Safari浏览器上无效
还以为是表单提交的问题,但是通过查看答案发现并不是我想要的答案,而且通过测试,如果注释掉MIME协议,直接通过表单提交输出获取到的下载链接是正常可以获取到的
由此判断并不是表单的原因,然后我又单独直接把链接赋值给变量,通过MIME协议下载发现也是可以正常下载的,歌曲大小正常也可以播放:
这样不管是获取下载链接还是通过MIME协议直接下载在iphone的QQ浏览器中都是可以的,但是通过表单提取链接再通过MIME下载就是不可以下载正常文件的,不知道是什么问题,希望可以帮忙解答一下,谢谢!
上一篇: PHP YII框架的来帮忙了,多谢了
下一篇: php全局变量之学习笔记_PHP教程