我创建了一个服务帐户,获得了json配置文件,并使用它请求访问令牌。响应没问题,我收到令牌。当我使用它上传文件时一切正常,但当我尝试查看文件夹中的文件时,它会返回错误消息
超出未经身份验证的使用的每日限制。继续使用需要 注册
我的服务帐户只需要访问自己的文件,它不会访问任何其他用户的文件。 我查看文件的代码(现在我尝试调试响应):
public List<String> getFilesList() {
Http http = new Http();
HttpRequest req = new HttpRequest();
req.setMethod('GET');
req.setEndpoint('https://www.googleapis.com/drive/v2/files?accessToken='+accessToken');
HttpResponse resp = http.send(req);
System.debug(resp);
System.debug(resp.getBody());
return null;
}
答案 0 :(得分:1)
对于错误Daily Limit for Unauthenticated Use Exceeded. Continued use requires sign,请尝试在API下检查您的Google开发者控制台,这是与API密钥相关联的项目。示例:https://console.developers.google.com/project/<your app id>/apiui/api
。确保Google + API的状态设置为“开启”。
根据此SO question,该错误意味着您尚未设置Google API控制台项目。
- 创建Google APIs Console project
- 在Services pane上启用全部 您的项目需要的API。
- 在API Access pane上,点击创建一个 OAuth 2.0客户端ID 。将打开一个对话框填写你的项目 信息。点击下一步
- 选择适当的应用程序类型。根据您在此帖子中使用的标签,我猜这是一个iOS项目,所以选择 已安装的应用。
- 输入您的包ID。在您的应用程序列在那里之前,您无需输入App Store ID。
- 点击创建客户ID 。
醇>您将看到客户端ID和客户端密钥值。你会用的 这些值可以与您的项目和Google进行通信 的API。
如果您尚未使用它,请参阅Google+ iOS SDK and documentation以获取完整信息 走过去。称为“写时刻”的任务类似于 实施并演示如何连接和使用Google+ 来自使用SDK的iOS项目中的REST API。
您需要指定plus.me的范围才能获取个人资料 信息。
希望这有帮助!
答案 1 :(得分:1)
我发现了什么问题。我在url地址而不是标题中发送访问令牌。最终我这样做了:
public List<String> getFilesList() {
Http http = new Http();
HttpRequest req = new HttpRequest();
req.setMethod('GET');
req.setEndpoint('https://www.googleapis.com/drive/v2/files);
req.setHeader('Authorization', 'Bearer '+accessToken);
HttpResponse resp = http.send(req);
return null;
}