- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在尝试使用 Google Sheets v4 API 从我的 Google 电子表格中删除一行。
这是我正在使用的代码:
private void deleteRow()
{
List<Request> requests = new ArrayList<>();
DeleteDimensionRequest deleteDimensionRequest = new DeleteDimensionRequest();
DimensionRange dimensionRange = new DimensionRange();
dimensionRange.setStartIndex(14);
dimensionRange.setEndIndex(15);
deleteDimensionRequest.setRange(dimensionRange);
requests.add(new Request()
.setDeleteDimension(deleteDimensionRequest)
);
BatchUpdateSpreadsheetRequest batchUpdateRequest = new BatchUpdateSpreadsheetRequest()
.setRequests(requests);
try
{
mService.spreadsheets().batchUpdate("Spreadsheet_ID", batchUpdateRequest).execute();
}
catch(IOException e)
{
e.printStackTrace();
}
}
这个函数给我的错误是:
08-14 15:47:10.818 26956-27285/com.xxx.xxxxx.xxxxxxxx
W/GoogleAuthUtil: isUserRecoverableError status: NEED_PERMISSION
在我的其他类文件中,我已经指出了权限范围,包括驱动器和电子表格。
在 Java 快速入门中...
public static Credential authorize() throws IOException {
// Load client secrets.
InputStream in =
SheetsQuickstart.class.getResourceAsStream("/client_secret.json");
GoogleClientSecrets clientSecrets =
GoogleClientSecrets.load(JSON_FACTORY, new InputStreamReader(in));
// Build flow and trigger user authorization request.
GoogleAuthorizationCodeFlow flow =
new GoogleAuthorizationCodeFlow.Builder(
HTTP_TRANSPORT, JSON_FACTORY, clientSecrets, SCOPES)
.setDataStoreFactory(DATA_STORE_FACTORY)
.setAccessType("offline")
.build();
Credential credential = new AuthorizationCodeInstalledApp(
flow, new LocalServerReceiver()).authorize("user");
System.out.println(
"Credentials saved to " + DATA_STORE_DIR.getAbsolutePath());
return credential;
}
这是除了我需要包含的 Android 快速入门提供的宣誓凭证之外的一种宣誓凭证吗?
最佳答案
根据给定的 JSON 响应,遇到的错误是由于身份验证范围不足造成的。您可以尝试检查 Google Sheets API 所需的 OAuth 2.0 范围信息,如 Authorizing requests with OAuth 2.0 中给出。 .
请注意,向 Google Sheets API 请求非公开用户数据必须经过经过身份验证的用户的授权。同样,如果应用程序需要创建电子表格或以其他方式操作其元数据,则该应用程序还必须请求 Google Drive API 范围。
此外,这篇 SO 帖子中给出的解决方案 - 403 Forbidden error when accessing Google Drive API downloadURL关于错误代码 403 也可能有帮助。
关于java - (Android/Java) Google Sheets v4 isUserRecoverableError 状态 : NEED_PERMISSION,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38947311/
本文整理了Java中com.google.android.youtube.player.YouTubeInitializationResult.isUserRecoverableError()方法的一
我目前正在尝试使用 Google Sheets v4 API 从我的 Google 电子表格中删除一行。 这是我正在使用的代码: private void deleteRow() { List
我是一名优秀的程序员,十分优秀!