最近我将Google云端硬盘与我的iOS应用程序集成在一起。一切正常,但.ppt文件。通常,如果文件是Drive文件,我使用downloadURL下载它。如果该文件属于Google Docs,我会使用其中一个exportLinks(与Alain描述的here完全相同)。
然而,所有来自Google文档的.ppt文件(包含"mimeType": "application/vnd.google-apps.presentation"
)在下载后都会损坏(我使用导出链接exportFormat=pptx
)。通过Web浏览器下载的同一文件工作正常。
我使用ASIHTTPRequest lib下载文件(这也可能是.ppt损坏的原因?)。
为什么只有ppt文件会导致问题?
答案 0 :(得分:2)
我已经可以告诉你,你正在使用的lib不是原因:我没有使用它,但我遇到了同样的问题:似乎收到的代码不是200(if($) httpRequest-> getResponseHttpCode()== 200))因为它显示了我要求返回的特定错误消息。此外,当我尝试下载PDF或txt的演示文稿时,它会显示相同的错误。
这不是一个真正的答案,但我也想了解为什么只有演示文稿才会导致问题。
编辑:收到的代码 302 。如果它可以帮助... 编辑2:尝试后,我注意到第一个参数是文件ID,第二个参数是导出格式:
https://docs.google.com/feeds/download/presentations/Export?docId=filedid&exportFormat=pptx
但在302代码中,我有这个位置:
https://docs.google.com/feeds/download/presentations/Export?exportFormat=pptx&id=fileid
不仅两个参数的顺序不同,而且名称是id而不是docid
当我获取此URL时,将其作为导出链接,然后尝试复制该文件,它正在运行。我收到200响应和文件内部。
我希望它有所帮助。