Google 电子表格 API,400 错误错误请求:无法解析范围
Google spreadsheet API, 400 error bad request : unable to parse range
我正在尝试使用电子表格示例访问 Google 电子表格。当我 运行 示例代码时,它运行良好。我只是更改 SpreadsheetId 和范围。它开始给我:
Exception in thread "main" com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 Bad Request
{
"code" : 400,
"errors" : [ {
"domain" : "global",
"message" : "Unable to parse range: Class Data!A2:A4",
"reason" : "badRequest"
} ],
"message" : "Unable to parse range: Class Data!A2:A4",
"status" : "INVALID_ARGUMENT"
}
at com.google.api.client.googleapis.json.GoogleJsonResponseException.from(GoogleJsonResponseException.java:146)
at com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:113)
at com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:40)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.interceptResponse(AbstractGoogleClientRequest.java:321)
at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:1065)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:419)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:352)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:469)
at poc.mainPOC.main(mainPOC.java:157)
代码如下:
String spreadsheetId = "my spread sheet ID";
String range = "Class Data!A2:A4";
ValueRange response = service.spreadsheets().values()
.get(spreadsheetId, range)
.execute();
尝试用 A2:A4
替换 Class Data!A2:A4
如果您查看 sheet itself,您会注意到作品sheet 的标题为 "Class Data"。因此,只需将 sheet 的名称放在 "Class Data" 的位置即可。例子:
字符串范围 = "SheetName!A1:C";
我试图将一些数据添加到名为 Emmett
的 sheet 中,该数据尚不存在,但收到此错误:
Error: Unable to parse range: Emmet!A2:C12
我不得不在传播中手动创建名为 Emmett
的 sheet sheet 然后它就像一个魅力。
我 运行 当我在选项卡名称中输入错误时陷入此错误。在您的情况下 "Class Data" 与选项卡的名称不匹配
String range = "Class Data!A2:A4";
Class Data
是您的工作表名称,仅供参考:底部选项卡上的名称,默认名称是 "Sheet1"。将 Class Data
替换为您要使用的那个。
在我的例子中,google sheet 中有一个额外的 space,而我最后正在修剪 sheet 名称。删除修剪逻辑后,一切正常。
我了解到,如果列名尚不存在,则此命令将无法找到它。您需要确保要写入的列已经存在——我是从 google sheet 手动完成的。
我正在尝试使用电子表格示例访问 Google 电子表格。当我 运行 示例代码时,它运行良好。我只是更改 SpreadsheetId 和范围。它开始给我:
Exception in thread "main" com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 Bad Request
{
"code" : 400,
"errors" : [ {
"domain" : "global",
"message" : "Unable to parse range: Class Data!A2:A4",
"reason" : "badRequest"
} ],
"message" : "Unable to parse range: Class Data!A2:A4",
"status" : "INVALID_ARGUMENT"
}
at com.google.api.client.googleapis.json.GoogleJsonResponseException.from(GoogleJsonResponseException.java:146)
at com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:113)
at com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:40)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.interceptResponse(AbstractGoogleClientRequest.java:321)
at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:1065)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:419)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:352)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:469)
at poc.mainPOC.main(mainPOC.java:157)
代码如下:
String spreadsheetId = "my spread sheet ID";
String range = "Class Data!A2:A4";
ValueRange response = service.spreadsheets().values()
.get(spreadsheetId, range)
.execute();
尝试用 A2:A4
Class Data!A2:A4
如果您查看 sheet itself,您会注意到作品sheet 的标题为 "Class Data"。因此,只需将 sheet 的名称放在 "Class Data" 的位置即可。例子: 字符串范围 = "SheetName!A1:C";
我试图将一些数据添加到名为 Emmett
的 sheet 中,该数据尚不存在,但收到此错误:
Error: Unable to parse range: Emmet!A2:C12
我不得不在传播中手动创建名为 Emmett
的 sheet sheet 然后它就像一个魅力。
我 运行 当我在选项卡名称中输入错误时陷入此错误。在您的情况下 "Class Data" 与选项卡的名称不匹配
String range = "Class Data!A2:A4";
Class Data
是您的工作表名称,仅供参考:底部选项卡上的名称,默认名称是 "Sheet1"。将 Class Data
替换为您要使用的那个。
在我的例子中,google sheet 中有一个额外的 space,而我最后正在修剪 sheet 名称。删除修剪逻辑后,一切正常。
我了解到,如果列名尚不存在,则此命令将无法找到它。您需要确保要写入的列已经存在——我是从 google sheet 手动完成的。