gpt4 book ai didi

java - 如何为: `google-client spreadsheet api` ?设置超时

转载 作者:行者123 更新时间:2023-12-01 06:04:59 25 4
gpt4 key购买 nike

我正在使用 google-client api 来处理电子表格。

20 秒后我超时。如何将超时设置为自定义值?

private Sheets initService(GoogleCredential credential) throws GeneralSecurityException, IOException {
final HttpTransport HTTP_TRANSPORT = GoogleNetHttpTransport.newTrustedTransport();
final JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance();

return new Sheets.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential)
.setApplicationName("my_app")
.build();
}

我应该在HttpTransport中设置它吗?

最佳答案

我遇到了同样的问题,并且实际上从 Google 找到了记录的解决方案

Google API Client Libraries - Timeouts and Errors

为了简单起见,您的实现必须添加对以下内容的调用:

.setHttpRequestInitializer(createHttpRequestInitializer(credential))

在 Sheets.Builder 中,然后将以下方法添加到您的类中,提供对应用程序来说似乎合理的任何超时值。

    private HttpRequestInitializer createHttpRequestInitializer(final HttpRequestInitializer requestInitializer) {
return new HttpRequestInitializer() {
@Override
public void initialize(final HttpRequest httpRequest) throws IOException {
requestInitializer.initialize(httpRequest);
httpRequest.setConnectTimeout(3 * 60000); // 3 minutes connect timeout
httpRequest.setReadTimeout(3 * 60000); // 3 minutes read timeout
}
};
}

关于java - 如何为: `google-client spreadsheet api` ?设置超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46999143/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com