我正在使用默认的Swagger codegen生成的android api(在Swagger编辑器中)。问题是没有任何选项,如何设置连接超时和套接字超时。
是否有任何优雅的方法来设置超时而不会对生成的代码进行任何更改?或者我是否必须实现自己的计时器,这将终止服务器调用?
感谢您的任何建议!
答案 0 :(得分:1)
我不认为默认的Android API客户端有任何帮助方法来设置连接超时。
我建议您使用okhttp-gson
HTTP库代替Java(与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
并允许通过setConnectTimeout
ApiClient
方法设置HTTP连接超时
答案 1 :(得分:0)
OkHttp的默认连接超时为10秒。可以通过设置为Apiclient进行修改。
apiClient.setConnectTimeout(20_000);