有时,在执行v3时,我会收到以下错误消息
错误:
sun.security.ssl.InputRecord.readFully(Unknown java.net.SocketTimeoutException:在java.net.SocketInputStream.socketRead0(原生方法)、java.net.SocketInputStream.socketRead(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.socketRead(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.socketRead(未知源)、java.net.SocketInputStream.socketRead(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.socketRead(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.socketRead(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.socketRead(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.socketRead(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.socketRead(未知源)、java.net.SocketInputStream.read(未知源)、java.net.SocketInputStream.read(未知源
基本上,我试图执行以下代码:
代码:
Get get = analytics.data().ga().get(bean.getIds(), bean.getStartDate(), bean.getEndDate(), bean.getMetrics());
get.setDimensions(bean.getDimensions());
get.setSamplingLevel(bean.getSamplingLeve());
get.setMaxResults(bean.getMaxResult());
query.setIds("ga:"+ids[i]);
get.buildHttpRequest().setReadTimeout(5 * 60000);
get.buildHttpRequest().setConnectTimeout(5 * 60000);
gaList.add(get.execute());
但是setReadTimeout(millisec)和serConnectionTimeout(millisec)没有工作。
有什么帮助吗?
发布于 2017-09-19 15:29:23
尝试以下操作,并从您的代码中删除setTimout代码:Java Google Analytics API - Read timed out
private static HttpRequestInitializer setHttpTimeout(final HttpRequestInitializer requestInitializer) {
return new HttpRequestInitializer() {
@Override
public void initialize(HttpRequest httpRequest) throws IOException {
requestInitializer.initialize(httpRequest);
httpRequest.setConnectTimeout(3 * 60000); // 3 minutes connect timeout
httpRequest.setReadTimeout(3 * 60000); // 3 minutes read timeout
}};
}
public static Analytics initializeAnalytics() throws Exception {
HttpTransport httpTransport = GoogleNetHttpTransport.newTrustedTransport();
GoogleCredential credential = new GoogleCredential.Builder()
.setTransport(httpTransport)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId(SERVICE_ACCOUNT_EMAIL)
.setServiceAccountPrivateKeyFromP12File(new File(KEY_FILE_LOCATION))
.setServiceAccountScopes(AnalyticsScopes.all())
.build();
// Construct the Analytics service object.
return new Analytics.Builder(httpTransport, JSON_FACTORY,setHttpTimeout(credential))
.setApplicationName(APPLICATION_NAME).build();
}
https://stackoverflow.com/questions/31540688
复制相似问题