2

我正在尝试使用 Gmail 将 38 封邮件批量插入 GmailRESTFul API并收到此异常:

java.io.IOException: insufficient data written
    at sun.net.www.protocol.http.HttpURLConnection$StreamingOutputStream.close(HttpURLConnection.java:3214)
    at com.google.api.client.http.javanet.NetHttpRequest.execute(NetHttpRequest.java:81)
    at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:965)
    at com.google.api.client.googleapis.batch.BatchRequest.execute(BatchRequest.java:241)

这是什么意思,我该如何解决这个问题?
有任何想法吗?

谢谢

4

2 回答 2

1

多年后,我遇到了这个问题并成功解决了它。对于后代,这是由于单个消息或 - 如果您正在批处理请求 - 整批消息超过 25mb 大小限制。这与您的连接无关。

减少批次中的项目数量或在将邮件添加到批次之前检查邮件总大小。如果它超过 25 MB,那么它将失败整个批次。

于 2016-12-23T14:16:43.837 回答
0

在导入 8000 多封电子邮件时,我收到此错误大约 2 次,可能是由于我端的网络连接不足,除了在 IOException 的情况下重试(但在 400 Bad Request 的情况下不能重试)之外,你无能为力。

于 2014-08-04T18:32:26.683 回答