如何使用 Google Drive API v3 (perl) 移动文件
How can I move files with Google Drive API v3 (perl)
我正在尝试将单独上传到 Google 驱动器的文件从一个文件夹移动到另一个文件夹。
当我这样做时:
my $url = 'https://www.googleapis.com/drive/v3/files/' . $id;
my $tx = $ua->patch(
$url,
json => {
addParents => '0ByFk4UawESNUcEhWdjBWTVRXZ1E',
}
);
文件名已更改,但父文件夹(即我的 Google 驱动器的根文件夹)仍然相同。
我肯定做错了什么,但是什么?
我的client是一个Mojo::UserAgent
对象,不过好像关系不大。其他一切正常。
我知道 等其他语言的类似问题,但它们对我来说似乎翻译得不太好。
必须将 addParents
和 removeParents
添加为参数,而不是在 JSON 负载中。
这个有效:
my $url = Mojo::URL->new('https://www.googleapis.com/drive/v3/files/fileID');
$url->query({ addParents => 'parentIdToBeAdded',
removeParents => 'parentIdToBeRemoved' });
my $tx = $ua->patch($url, json => { modifiedTime => '2017-06-04T10:00:00-02:00' });
其他一些 - 如上面的请求 - 添加到 JSON 正文中。
基本上 documentation 中 'Required query parameters' 和 'Optional query parameters' 中的任何内容都作为查询进入,'Optional Properties' 进入 JSON 请求正文。
我正在尝试将单独上传到 Google 驱动器的文件从一个文件夹移动到另一个文件夹。
当我这样做时:
my $url = 'https://www.googleapis.com/drive/v3/files/' . $id;
my $tx = $ua->patch(
$url,
json => {
addParents => '0ByFk4UawESNUcEhWdjBWTVRXZ1E',
}
);
文件名已更改,但父文件夹(即我的 Google 驱动器的根文件夹)仍然相同。
我肯定做错了什么,但是什么?
我的client是一个Mojo::UserAgent
对象,不过好像关系不大。其他一切正常。
我知道
必须将 addParents
和 removeParents
添加为参数,而不是在 JSON 负载中。
这个有效:
my $url = Mojo::URL->new('https://www.googleapis.com/drive/v3/files/fileID');
$url->query({ addParents => 'parentIdToBeAdded',
removeParents => 'parentIdToBeRemoved' });
my $tx = $ua->patch($url, json => { modifiedTime => '2017-06-04T10:00:00-02:00' });
其他一些 - 如上面的请求 - 添加到 JSON 正文中。
基本上 documentation 中 'Required query parameters' 和 'Optional query parameters' 中的任何内容都作为查询进入,'Optional Properties' 进入 JSON 请求正文。