下载的ppt文件似乎已损坏



最近我将Google Drive与我的iOS应用程序集成在一起。除了.ppt文件外,一切都很好。通常,如果一个文件是Drive文件,我会使用downloadURL下载它。如果该文件属于Google Docs,我会用其中一个exportLinks(与Alain在这里描述的完全相同)。

然而,所有来自谷歌文档的.ppt文件(带有"mimeType": "application/vnd.google-apps.presentation")在下载后都已损坏(我使用带有exportFormat=pptx的导出链接)。通过网络浏览器下载的同一文件运行良好。我使用ASIHTTPRequest库下载文件(这也可能是.ppt?损坏的原因)。

你知道为什么只有ppt文件会引起问题吗?

我已经可以告诉你,你正在使用的库不是原因:我没有使用它,但我有同样的问题:那里收到的代码似乎不是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的回复和文件的内部。

我希望它能有所帮助。

最新更新