GMail API批量插入消息抛出 - java.io.IOException:写入的数据不足

时间:2014-07-29 18:36:47

标签: java google-api-java-client gmail-api

我尝试使用Gmail RESTFul API将38封邮件批量插入Gmail并获得此例外:

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)

这意味着什么,我该如何解决这个问题? 有什么想法吗?

由于

2 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:0)

我在导入8000多封电子邮件时出现了大约24次这个错误,可能是因为我的网络连接不足,除了IOException重试之外你不能做多少(但是在400 Bad Request的情况下没有重试)