- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试从 GDrive 同步更改,所以我正在使用更改 api。当我将它与 restrictToMyDrive=true
一起使用时,它就像一个魅力。
但是当我尝试扩展它以同时跟踪共享文件时 restrictToMyDrive=false
我遇到了一些主要缺点。我的结果不一致 - parents
字段偶尔会丢失。
假设我们有 user A
将文件夹共享给 user B
:
rootSharedFolder
=> subFolder
=> subSubFolder
=> 文件
如果 user B
调用更改 API 的时间与 user A
共享 rootSharedFolder
的时间相对较近,则在 3/10 时间一些将在没有 parents
字段的情况下接收内部文件夹。
即使尝试在收到的已更改项目上使用 files.get
API,也会导致空的 parents
字段。但是如果我等一两分钟然后再次调用它,parents
字段确实存在于结果中。
还有其他人遇到过这个问题,也许有解决方法吗?
谢谢!
this behavior happens only when calling the
changes api
close to the time that the other user share you the items
最佳答案
Parents 字段可能由于两个因素而缺失:
在这两种情况下,您会注意到相同的情况:文件的 parents
字段丢失,起初无法判断您是哪种情况:
传播问题:
当您在共享文件共享给您后立即请求与不属于您的共享文件相关的一些文件详细信息时,可能会发生这种情况。
乍一看你可能找不到它的相关父级,这是因为更改仍在文件系统上传播,这被称为传播问题,应该不会持续很长时间,应该可以识别和解决通过在权限更改后几分钟检索此字段数据来带来不便。
无法访问 parent :
在这种情况下,您可能可以访问某个文件,但不能访问它的父文件夹,因此,您无法知道它的父文件夹,因为它没有与您共享。
这是在 documentation 上:
- parents — A parent does not appear in the parents list if the requesting user is a not a member of the shared drive and does not have access to the parent. In addition, with the exception of the top level folder, the parents list must contain exactly one item if the file is located within a shared drive.
旁注:您可能对使用 SharedDrives 感兴趣,其中文件由组织而不是个人用户拥有,简化共享过程并可能避免您在这里面临的问题。
https://developers.google.com/drive/api/v3/enable-shareddrives
如何知道是哪种情况?
一种方法是实现指数退避算法来尝试检索丢失的 parent 字段,如果在最大次数的尝试后它没有检索到我们可能是第二种情况:
exponentialBackoff(getParent, 7, 300, function(result) {
console.log('the result is',result);
});
// A function that keeps trying, "getParent" until it returns true or has
// tried "max" number of times. First retry has a delay of "delay".
// "callback" is called upon success.
function exponentialBackoff(toTry, max, delay, callback) {
console.log('max',max,'next delay',delay);
var result = toTry();
if (result) {
callback(result);
} else {
if (max > 0) {
setTimeout(function() {
exponentialBackoff(toTry, --max, delay * 2, callback);
}, delay);
} else {
console.log('we give up');
}
}
}
function getParent() {
var percentFail = 0.8;
return Math.random() >= 0.8;
}
关于google-drive-api - Google Drive API,更改 api - 缺少父字段的共享文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59361613/
我正在尝试在 map 上绘制一些疾病事件数据的位置。 我用它来导入数据: ByTown% addProviderTiles("CartoDB.Positron")%>% addPolygons
我有一个文件调用 find.js,我使用 node find.js 运行,我的节点是版本 10 我不知道为什么我无法使用 async await。 const axios = require("axi
我有一个项目作为引用添加到 System.Web。 但是,它似乎无法获取 HttpContext。这样做: Imports System.Web _ApplicationBase = HttpCont
在互联网上找到这段代码,出于某种原因它缺少 while 循环逻辑“while(i....)”,虽然我找到了 PigLatin* 问题的其他可行解决方案,但我真的很想了解这个正在工作。 *PigLati
我工作了一整天来运行 Xampp 并在其上安装 TYPO3。现在我登录到后端,但没有显示许多管理模块,例如模板、访问等。 - 一定是我做错了什么,但我不知道。 these are the module
你好 我有编译这个问题 \begin{equation} J = \sum_{j=1}^{C} \end{equation} 我不断收到错误 missing $ inserted 这很奇怪,因
我正在尝试使用 SQLite CLI,但无法获得 generate_series功能来工作。我可以按照文档中的建议使用递归 CTE 对其进行模拟,但我似乎无法获得该链接中的任何示例。这是我的 sess
我目前正在开发我想要的软件,而软件正在安装,它可以在后台为软件创建 native 图像。 我正在考虑使用 NGEN 并将进程优先级设置为低,因为我不希望它消耗 100% CPU。但是我发现我的计算机上
我想使用 Xcodes Instruments 进行 UI 自动化测试。但似乎缺少“自动化”。我怎样才能添加这个? 最佳答案 如果您想使用自动化仪器,请使用 Xcode 7.3。 Apple 在 Xc
我目前在 JS 开发中迈出了一小步,并编写了以下链接添加器: const button = document.getElementById('button') const listdiv = docu
此代码有什么问题: NSError *error = nil; [SFHFKeychainUtils deleteItemForUsername:@"IAPNoob01" andServiceName
出于某种原因,在安装和配置(我认为)一切之后,com.adobe.utils.AGALMiniAssembler 不见了,其他一切正常。 我认为我已尽一切努力让孵化器正常工作,但显然我错过了一步。 如
我有一个名为 new 的方法。调用 new 时,我传递了一个参数,但是当我运行应用程序时,出现没有参数或参数为空的错误。 StepReader.pm package StepReader; use s
安装 gtk 1.2(包名 gtk1)和 macports chokes 在最终的 make 中,在 libintl.h 的第 440 行。 extern locale_t libintl_newlo
我用按钮创建表格。 这是javascript代码: function layersListTable(layers) { var content =''; $.each($(layer
我在使用此 javascript 时遇到此错误,任何人都可以帮我弄清楚我做错了什么吗? $(this).prepend('Check availability »'); 它给我错误 mis
我有一个独立的工具链 NDK13b、api19、llvm 3.8 编译器、arm 32 位、带有 libcpp(llvm C++ 库) 我想避免依赖 libgcc,所以我构建了 compiler-rt
我按照一些教程使用 phonegap 的条形码扫描器插件。但是当我从现有源创建一个新的 android 项目来创建条码库时 (step 6 in this page)我收到错误:“AndroidMan
我现在尝试在 Eclipse 中打开我的布局 xml 文件。我只得到错误 No XML content. Please add a root view or layout to your docume
我的 android-sdk-windows\tools 目录中缺少层次结构查看器工具。 工具链接: http://developer.android.com/guide/developing/too
我是一名优秀的程序员,十分优秀!