繁体   English   中英

如何在Dart的Google Drive GoogleAPI v3中设置“ fields”参数?

[英]How to set the `fields` parameter in the Google Drive GoogleAPIs v3 in Dart?

我试图从Dart的Google Drive API v3返回文件资源的一组特定字段。 指定的那样 ,常规list()调用仅返回4个参数,但是如果我传入字段的查询参数(例如, fields='starred,webContentLink' ),则可以返回有关File的其他信息。 同样,传递fields='*'将返回整个文件资源。 在文档的“尝试使用此API”部分中,这可以正常工作。

现在,使用Dart程序包,设置$fields: '*'可行的,但是设置$fields: 'starred'导致以下错误: DetailedApiRequestError(status: 400, message: Invalid field selection starred)

// Assume I have successfully created an API client
g_drive.DriveApi api = new g_drive.DriveApi(client);
// This works
g_drive.FileList fileList = await api.files.list($fields: '*');
// This returns the 400 error
g_drive.FileList fileList = await api.files.list($fields: 'starred');

我进入了实际的v3代码,并手动将_queryParams["fields"]更改为已加starred ,但是这也不起作用( *起作用)。 我什至尝试用多余的引号对'starred'进行加引号,以防万一,但这导致了相同的错误( DetailedApiRequestError(status: 400, message: Invalid field selection 'starred')

有什么明显的我想念的东西吗?

接下来的修改如何?

来自:

$fields: 'starred'

至 :

$fields: 'files/starred'

要么

$fields: 'files%2Fstarred'

如果要检索带有星号和文件名的列表,则可以使用$fields: 'files(name,starred)' $fields: 'files(name%2Cstarred)'$fields: 'files(name%2Cstarred)'

参考:

如果这对您没有用,对不起。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM