Google Drive API文件选择器:文件选择“doc”扩展名返回空内容

时间:2016-06-20 18:57:04

标签: php google-api google-drive-api google-docs-api google-picker

我正在尝试通过谷歌选择器下载文件,pdf和docx扩展文件下载完全正常。

但我面临的问题是,在选择doc扩展文件时,对象将文件大小返回为零。换句话说,API的'PickerCallBack'功能提供了正确的mime类型,但文件大小为零响应。

看看屏幕截图,我们可以看到文件大小为零。

Click here to view Response information screen shot

因此,如果我继续使用文件ID&身份验证令牌我能够获得下载ULR,然后将其传递给PHP代码。

$request = new Google_Http_Request($downloadUrl, 'GET', null, null);

然后,如果您尝试获取文件内容,则使用此请求对象返回空。

$httpRequest = $service->getClient()->getAuth()->authenticatedRequest($request);
$httpRequest->getResponseBody();

参考:https://developers.google.com/drive/v2/web/manage-downloads#examples

注意:所有这个过程都适用于pdf和docx扩展,唯一的问题是文档扩展文件。

所以我需要知道我应该做什么,这样我才能获得文件内容以响应doc扩展文件。

1 个答案:

答案 0 :(得分:0)

正如Entering file extensions in the manifest中讨论的那样,

  

推荐的Drive最佳做法是同时注册MIME types和文件扩展名。

要修改的清单的重要部分是type和href字段:

  
      
  • 在类型字段中,输入您希望通过搜索您的应用的MIME类型和文件扩展名。
  •   
  • 在href字段中,输入您在清单中为web_url提供的相同网址。
  •   

除此之外,请注意Setting MIME types and file extensions

  

指定您的应用可以打开的MIME类型和文件扩展名。输入这些值时,请考虑以下事项:

     
      
  • 指定MIME类型和文件扩展名。有些情况只是其中一种还不够。
  •   
  • 确保您输入的MIME类型是标准,规范类型或Google MIME类型,不存在拼写错误或拼写错误。
  •   
  • 仔细考虑您的应用是否需要默认或次要状态。
  •   

您也可以通过给定的文档了解以下详细信息:

  • 支持的mime类型
  • 默认与辅助状态与默认情况下使用您的应用打开文件有关