【发布时间】:2021-01-12 13:40:52
【问题描述】:
我正在尝试将 Java 中的日志附加到 Google 表格中,但我收到 403 错误
虚拟代码:
private static void appendCurrentRunLog(String spreadSheetId, Sheets service,String logId)
{
try{
String logSheetRange=logId+".log!A1:Z";
for(int k=0;k<logList.size();k++){
ValueRange appendbody = new ValueRange().setValues(
Arrays.asList(Arrays.asList(logList.get(k))));
service.spreadsheets().values()
.append(spreadSheetId, logSheetRange, appendbody)
.setValueInputOption("user_entered")
.setInsertDataOption("insert_rows")
.setIncludeValuesInResponse(true)
.execute();
}
}catch (Exception e){
mLogger.info("Failed while inserting logs"+e.getMessage());
e.printStackTrace();
}
}
错误:
com.google.api.client.googleapis.json.GoogleJsonResponseException: 403 Forbidden
{
"code" : 403,
"errors" : [ {
"domain" : "global",
"message" : "Request had insufficient authentication scopes.",
"reason" : "forbidden"
} ],
"message" : "Request had insufficient authentication scopes.",
"status" : "PERMISSION_DENIED"
}
我应该在哪里使用 batchUpdate() 以及如何使用? 还有其他解决方案吗? 请推荐!!
【问题讨论】:
-
你能在你的日志中显示错误吗?
-
403 表示权限问题 - 检查您的信用以及您如何使用它们。您对工作表有写入权限吗?
-
错误添加@MarcosEchagüe
-
是的@RoddyoftheFrozenPeas
-
也许您在为 Sheets 对象构建凭据时犯了一些错误,请参阅此示例 github.com/googleworkspace/java-samples/blob/master/sheets/…
标签: java google-sheets-api google-api-java-client