【发布时间】:2020-04-21 19:52:48
【问题描述】:
我尝试使用以下代码发出 https 请求
(object : Thread(){
override fun run() {
super.run()
val url = URL("https://europe-west3-ronda-32e4a.cloudfunctions.net/myFunction")
val urlConnection: URLConnection = url.openConnection()
val inpS: InputStream = urlConnection.getInputStream()
}
}).start()
但有时它会失败,有时它会起作用,我不知道发生了什么请帮助我
错误日志:
java.net.ConnectException: Failed to connect to europe-west3-ronda-32e4a.cloudfunctions.net/2001:4860:4802:36::36:443
at com.android.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:1409)
at com.android.okhttp.internal.io.RealConnection.connect(RealConnection.java:1359)
at com.android.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:221)
at com.android.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:144)
at com.android.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:106)
at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:400)
at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:333)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:483)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:429)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:252)
at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getInputStream(DelegatingHttpsURLConnection.java:211)
at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:30)
at com.sandukhan.ronda.Server$sendMove$1.run(Server.kt:431)
【问题讨论】:
-
您好,您有什么理由坚持使用原生 android 的 okHttp 库而不使用 Retrofit 或 OkHttp 吗?
-
不,没有理由这只是我在谷歌上找到的第一个结果,我会看到你的建议。谢谢
-
我用过 OkHttp 效果很好,谢谢
-
不错。我已经发布了您可以接受的评论的答案,以便其他人可以看到它。谢谢。
标签: java android http kotlin https