【问题标题】:Problems uploading files to Google Drive with iOS使用 iOS 将文件上传到 Google Drive 时出现问题
【发布时间】:2015-12-02 17:40:49
【问题描述】:

我终于设法让 Google Drive API 使用 Swift 在 iOS 上运行。

我可以访问我的 Google Drive,下载文件夹和文件名,所以我知道基本身份验证和 API 正在工作。

问题是当我尝试上传一个小文件时 - 生成了这个错误

reason: 'unexpected response data (uploading to the wrong URL?)
{"error":{"code":403,"message":"Insufficient Permission","data":[{"domain":"global","reason":"insufficientPermissions","message":"Insufficient Permission"}]},"id":"gtl_7"}'

我已经设置了一个看起来像有效的 OAuth 2.0 客户端 ID,但是当我第一次尝试这个时,我设置了错误的授权范围(来自我复制的示例) - 'kGTLAuthScopeDriveReadonly'。我现在已将其更改为“kGTLAuthScopeDrive”,但我担心该应用可能仍在使用原始范围,因为我无法强制重新登录。

这是我用来检查我是否已登录的代码

func checkAuthorisation()
{
if let auth = GTMOAuth2ViewControllerTouch.authForGoogleFromKeychainForName(
    kKeychainItemName,
    clientID: kClientID,
    clientSecret: kClientSecret)
    {
        service.authorizer = auth
    }
    else
    {
        presentViewController(
            createAuthController(),
            animated: true,
            completion: nil
        )
    }
}

这是我的上传代码

let metaData = GTLDriveFile()
metaData.title = "testfile.DAT"

let dataGoogleDrive = strMessage.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: true)
let uploadParamaters = GTLUploadParameters(data: dataGoogleDrive!, MIMEType: "text/plain")
let query = GTLQueryDrive.queryForFilesInsertWithObject(metaData, uploadParameters: uploadParamaters)

let serviceTicket = dataModel.googleDrive.service.executeQuery(query, completionHandler:
    {(ticket, file, error) -> Void in
        print("complete")
    })

我发现很多帖子描述了设置 Google Drive API 的困难,但这不再是问题了。

  1. 问题仅仅是我仍在使用具有错误范围的缓存凭据吗?如果是这样,我该如何冲洗?
  2. 我需要在 Google Developer Console 中配置什么吗?有一个选项可将 Drive API 配置为“允许用户使用此应用程序创建新文档”。但是当我尝试使用它时,它不允许我保存更改。

【问题讨论】:

    标签: google-drive-api google-oauth


    【解决方案1】:

    您可以尝试进入 Google 帐户并撤消该应用的权限。然后它应该用新的范围重新提示

    【讨论】:

    • 完全排序。
    猜你喜欢
    • 2016-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-14
    • 2021-03-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-10
    相关资源
    最近更新 更多