[英]Dart googleapis 0.35.0 - Google Drive API v3 - fields request parameter
[英]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.