【问题标题】:How to frame a Search Query parameter using Google Drive API if a fileId is Trashed =true?如果 fileId 为 Trashed =true,如何使用 Google Drive API 构建搜索查询参数?
【发布时间】:2014-02-27 21:48:34
【问题描述】:

在 Google Drive API 中,如何构建查询参数以查找文件 id 说“0BDE899DDDDDGG”是垃圾=真?一些例子会有所帮助。

我知道我们可以使用file.get 并且从Json 响应中我们可以得到labels.trashed 属性来确定文件是否在回收站中。但是这样我需要查看响应,我想查询调用以返回一个文件信息,请求中带有垃圾=false。我如何在请求调用中使用search Query parameters

function getDriveFile(accessToken, fileId, callback, errorCallback, completeCallback) {
    // Return if parameters for Google AJAX request are not valid
    if (!verifyAllArgumentsNotEmpty(accessToken, fileId)) {
        return;
    }
    $.ajax({
        timeout: 10000, // Timeout (in ms) = 10sec
        url: _getGoogleDriveUrl(fileId),
        beforeSend: function(xhr) {
            xhr.setRequestHeader('Authorization', 'Bearer ' + accessToken);
        },
        type: 'GET',
        dataType: 'json',
        success: function(data, textStatus, jqXHR) {
            if (typeof(callback) === 'function') {
                callback(data, textStatus, jqXHR);
            }
        },
        error: function(data, textStatus, jqXHR) {
            if (typeof(errorCallback) === 'function') {
                errorCallback(data, textStatus, jqXHR);
            }
        },
        complete: function(jqXHR, textStatus) {
            if (typeof(completeCallback) === 'function') {
                completeCallback(jqXHR, textStatus);
            }
        }
    });
}

function _getGoogleDriveUrl(fileId) {
    var host = "../"; // relative path to proxy
    var proxyName = contextUrl;
    var result = host+proxyName+'/drive/v2/files/';
    if ($.trim(fileId) !== '') {
        result = result + fileId;
                }
    }
    return result;
}

【问题讨论】:

    标签: google-drive-api


    【解决方案1】:

    你不能。为什么不想看响应对象?

    【讨论】:

    • 那是因为 google 需要大约 2 小时来更新 JSON 响应中的文件夹状态已丢弃 =true。
    • 所以认为如果我以询问垃圾=真与否的方式提出请求查询,那么它可能会向我发送准确的响应。
    • 所以你正在删除一个文件夹,并且在 2 小时内,如果你 GET 那个文件夹,它会显示垃圾=假?如果它是可重复的,这听起来像是一个错误。您是否尝试过 developers.google.com/drive/v2/reference/files/get#try-it 并确认了该行为?如果文件夹中有文件,可能值得明确删除它们,然后删除空文件夹。
    • YES。当我删除未删除的文件时,在 JSON 响应中我看到已删除 =false。在developers.google.com/drive/v2/reference/files/get#try-it 中,我在响应中立即看到了垃圾=true。我不明白他们为什么会有这样的差异。我已经发布了我的 GET 请求。为什么我会看到 2 种不同的行为?
    • 这可能是您的应用程序中的错误,或者驱动器删除文件夹中的文件导致延迟。我怀疑它更有可能是您的应用
    猜你喜欢
    • 1970-01-01
    • 2013-04-18
    • 1970-01-01
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-30
    相关资源
    最近更新 更多