无法从谷歌云端硬盘iOS下载文件。显示"daily limit exceeded"



我正在使用Google Drive API在我的应用程序中获取并下载文件。我成功地获取了所有文件的列表。但是当我想下载GTMSessionFetcher的文件时,它在控制台" domain = com.google.google.httpstatus code = 403"中向我显示了此错误。/strong>(null)"
当我试图在浏览器上击中URL时,它向我显示了这个

**{
 "error": {
  "errors": [
   {
    "domain": "usageLimits",
    "reason": "dailyLimitExceededUnreg",
    "message": "Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup.",
    "extendedHelp": "https://code.google.com/apis/console"
   }
  ],
  "code": 403,
  "message": "Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup."
 } 
}**

我不明白为什么会发生这种情况。在您的错误处理页面上,他们说我需要要求一些其他配额,这就是为什么我要求配额的原因。请帮助我先生,尽快摆脱这个问题,我浪费了很多时间来解决解决方案。

那就是我尝试下载的方式

NSString *url = [NSString stringWithFormat:@"https://www.googleapis.com/drive/v3/files/%@/export?alt=media&mimeType=application/pdf",[self.listPAtharray objectAtIndex: indexPath.row]];
    NSLog(@"url is %@",url);
    GTMSessionFetcher *fetcher = [self.service.fetcherService fetcherWithURLString:url];
    [fetcher beginFetchWithCompletionHandler:^(NSData *data, NSError *error) {
        if (error == nil) {
            NSLog(@"Retrieved file content");
            // Do something with data
        } else {
            NSLog(@"An error occurred: %@", error);
        }
    }];

此处列表路径阵列存储所有文件ID

建议的遇到错误的建议是请求其他配额,但是如果您已经这样做并且仍然存在问题,请尝试对用户进行身份验证,如驱动器平台最佳实践中所建议的那样。

您可以实施以下内容,以帮助您构建高质量的Google Drive应用程序。

  1. 验证用户

    • 使用OAuth 2.0和Google的身份API来验证新用户和现有用户。只要您避免它,就不需要用户为您的应用程序创建新密码。
  2. 授权访问

    • OAUTH 2.0驱动器应用程序框架解决了许多授权挑战。
  3. 处理错误:被撤销或无效令牌

    • Google Drive应用程序应在调用驱动器API时返回HTTP 401或HTTP 403响应的API。
  4. 优雅处理拒绝访问请求

  5. 打开和创建文件
  6. 处理共享文件
  7. 提高性能
  8. 处理API错误
    • 驱动器应用程序应捕获并处理使用REST API时可能遇到的所有错误。有关API返回的错误的参考,请参见处理API错误。

您可以浏览给定的文档以获取更多信息。

最新更新