从Google Drive读取Word文档内容

时间:2019-02-25 13:36:53

标签: laravel laravel-5 google-api google-drive-api

我正在尝试使用Google sdk从Google驱动器中获取文档内容。问题是get()函数无法正常工作。它只提供文件元数据,不提供任何实际内容。

$googl = new Googl(); 
$this->client = $googl->client();
$this->client->setAccessToken(session('user.token'));
$this->drive = $googl->drive($this->client);

$file = $this->drive->files->get("fileId"); 
return $file;

2 个答案:

答案 0 :(得分:2)

documentation看来,您可以使用以下方法下载文件:

$file = $this->drive->files->get("fileId", array('alt' => 'media'));
$content = $file->getBody()->getContents();

答案 1 :(得分:1)

我怀疑我们这里可能有语言问题。

从Google驱动器文件中读取内容

google drive api是文件数据存储区api。这意味着它将存储文件本身以及有关该文件的信息。它不授予您对该文件内容的任何访问权限。

如果您想知道文件中的内容,则需要下载文件并在计算机上打开它。

或尝试Google documents api,但是我怀疑它只能读取google驱动器文档文件,而不能读取word文件,您可能必须先将其转换。

下载文件

如果您查看Download Files的文档,则会发现以下内容。

 $fileId = '0BwwA4oUTeiV1UVNwOHItT0xfa2M';
$response = $driveService->files->get($fileId, array(
    'alt' => 'media'));
$content = $response->getBody()->getContents();