【问题标题】:How to set connection and socket timeout for default swagger android client如何为默认的 swagger android 客户端设置连接和套接字超时
【发布时间】:2016-05-10 00:53:31
【问题描述】:

我正在使用默认 Swagger codegen(在 Swagger 编辑器中)生成的 android api。问题是没有任何选项,如何设置连接超时和套接字超时。

是否有任何优雅的方法来设置超时而不更改生成的代码?还是我必须实现自己的计时器,这将终止服务器调用?

感谢您的建议!

【问题讨论】:

    标签: android timeout swagger apache-commons-httpclient swagger-2.0


    【解决方案1】:

    OkHttp 的默认连接超时为 10 秒。可以通过设置为Apiclient来修改。

    apiClient.setConnectTimeout(20_000);

    【讨论】:

      【解决方案2】:

      我认为默认的 Android API 客户端没有任何帮助方法来设置连接超时。

      我建议您改用 Java 的 okhttp-gson HTTP 库(与 Android 兼容)。下面是使用okhttp-gson 库生成Java 客户端的命令:

      java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate \
      -i modules/swagger-codegen/src/test/resources/2_0/petstore.json \
      -l java \
      -o /var/tmp/java-okhttp-gson/ \
      -D library=okhttp-gson
      

      它允许通过ApiClient中的setConnectTimeout方法设置HTTP连接超时

      【讨论】:

      • 我确实发现默认 API 没有给定选项。 OkHttp 可以。所以我将其作为正确答案进行检查。
      猜你喜欢
      • 2011-08-03
      • 2021-06-02
      • 1970-01-01
      • 2011-07-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多