为了账号安全,请及时绑定邮箱和手机立即绑定

无法通过 Docs API 将文本添加到新的 Google Doc

无法通过 Docs API 将文本添加到新的 Google Doc

隔江千里 2023-05-10 13:28:45
我的程序正在创建文档,每个文档都有需要放入其中的文本。任何调用 的尝试都会InsertTextRequest引发错误。List<Request> requests = new ArrayList<>();requests.add(new Request().setInsertText(new InsertTextRequest()                .setText("Simple test.")                .setLocation(new Location().setIndex(0))));BatchUpdateDocumentRequest body = new BatchUpdateDocumentRequest()                .setRequests(requests);BatchUpdateDocumentResponse response = docService.documents()                .batchUpdate(file.getId(), body).execute();Exception in thread "main" com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 Bad Request{  "code" : 400,  "errors" : [ {    "domain" : "global",    "message" : "Invalid requests[0].insertText: The insertion index must be inside the bounds of an existing paragraph. You can still create new paragraphs by inserting newlines.",    "reason" : "badRequest"  } ],  "message" : "Invalid requests[0].insertText: The insertion index must be inside the bounds of an existing paragraph. You can still create new paragraphs by inserting newlines.",  "status" : "INVALID_ARGUMENT"}即使尝试在添加文本之前添加换行符也无法解决此问题。List<Request> requests = new ArrayList<>();requests.add(new Request().setInsertText(new InsertTextRequest()                .setText("\n")                .setLocation(new Location().setIndex(0))));requests.add(new Request().setInsertText(new InsertTextRequest()                .setText("Simple test.")                .setLocation(new Location().setIndex(0))));BatchUpdateDocumentRequest body = new BatchUpdateDocumentRequest()                .setRequests(requests);BatchUpdateDocumentResponse response = docService.documents()                .batchUpdate(file.getId(), body).execute();这也会调用相同的错误。如何正确添加文本?
查看完整描述

1 回答

?
FFIVE

TA贡献1797条经验 获得超6个赞

将对象的索引设置Location为 1,因为它是从 1 开始索引的。



查看完整回答
反对 回复 2023-05-10
  • 1 回答
  • 0 关注
  • 83 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信