Codenameone在连接到域名url时偶尔会看到ConnectException

Codenameone在连接到域名url时偶尔会看到ConnectException,codenameone,Codenameone,我有一个域名www.example.com,ip地址为1.2.3.4 在我的代码中,我连接到调用一些REST服务。(从未使用Ip地址)这一切都很好,但有时我会得到: Exception: java.net.ConnectException - Failed to connect to www.example.com/1.2.3.4:8443 java.net.ConnectException: Failed to connect to www.example.com/1.2.3.4:8443

我有一个域名www.example.com,ip地址为1.2.3.4

在我的代码中,我连接到调用一些REST服务。(从未使用Ip地址)这一切都很好,但有时我会得到:

Exception: java.net.ConnectException - Failed to connect to 
www.example.com/1.2.3.4:8443
java.net.ConnectException: Failed to connect to www.example.com/1.2.3.4:8443 
at com.android.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:1418)
at   com.android.okhttp.internal.io.RealConnection.connect(RealConnection.java:1368)
    at com.android.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:219)
    at com.android.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:142)
    at com.android.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:104)
    at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:392)
    at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:325)
    at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:470)
    at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:416)
    at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:547)
    at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:105)
    at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:26)
    at com.codename1.impl.android.f.J(AndroidImplementation.java:5614)
    at com.codename1.l.g.j(ConnectionRequest.java:773)
    at com.codename1.l.s$c.run(NetworkManager.java:325)
    at com.codename1.impl.b$1.run(CodenameOneThread.java:60)
    at java.lang.Thread.run(Thread.java:764)    
问题:有时ip地址(1.2.3.4)似乎是域名的后缀,导致连接到的url无效,因此出现异常。这种情况并非总是发生

你知道是什么导致了url的混乱吗

从设备上的浏览器:
没有Wifi和移动网络:无法连接
有Wifi但没有移动网络:可以连接

没有Wifi,但使用移动网络:可以连接

IP地址实际上没有后缀,Android例外只是以一种令人困惑的方式列出它,因为这在连接到服务器的阶段失败。它列出了它试图打开的IP地址。连接服务器后,会发出获取实际url的请求,但尚未达到该阶段


我不确定为什么故障有时会发生,有时不会发生,但无线网络不可靠,这可能与此有关。

IP地址实际上没有后缀,Android例外只是以一种令人困惑的方式列出它,因为这是在连接到服务器的阶段失败的。它列出了它试图打开的IP地址。连接服务器后,会发出获取实际url的请求,但尚未达到该阶段


我不确定为什么故障有时会发生,而在其他情况下不会发生,但无线网络不可靠,因此可能与此有关。

能否提供连接逻辑的源代码?请按要求:
ConnectionRequest cr=new ConnectionRequest();cr.setPost(假);cr.setHttpMethod(“GET”);cr.setUrl(“https://www.myexample.com:8443/rest/endpoint"); cr.addArgument(“var1”,val1);cr.addArgument(“var2”,val2);cr.addResponseListener(回调);NetworkManager.getInstance().addToQueue(cr)
只有当设备上的应用程序连接到移动数据网络时,才会发生这种情况。不要认为我在wifi上看到了错误。您是否可能将域与仅在NAT中可见的IP相关联?如果您试图在设备与wifi断开连接的情况下从浏览器访问URL,它是否工作?更新了原始问题。别以为是这样。(只是网络托管公司有DNS条目将域名指向我的亚马逊AWS实例ip。你能提供连接逻辑的源代码吗?按要求:
ConnectionRequest cr=new ConnectionRequest();cr.setPost(false);cr.setHttpMethod(“GET”);cr.setUrl()https://www.myexample.com:8443/rest/endpoint“”;cr.addArgument(“var1”,val1);cr.addArgument(“var2”,val2);cr.addResponseListener(回调);NetworkManager.getInstance().addToQueue(cr)
只有当设备上的应用程序连接到移动数据网络时才会发生这种情况。不要认为我在使用wifi时看到了错误。是否可能将域与仅在NAT中可见的IP关联?如果在设备与wifi断开连接时尝试从浏览器访问URL,是否有效?已更新ginal问题。不要这样认为。(只是网络托管公司有DNS条目,将域名指向我的亚马逊AWS实例ip。我又看了一遍代码,发现我有
setDefaultCacheMode(CachingMode.SMART);
我将其改为
setDefaultCacheMode(CachingMode.OFF)
并且我没有再看到错误。由于我不知道这个调用的内部结构,这可能是导致问题的原因吗?我没有看到缓存模式和这个问题之间的任何联系。它只是为
添加HTTP头,如果自
以来进行了修改,如果没有匹配的
等等。我再次查看了我们的代码并注意到我使用了
setDefaultCacheMode(CachingMode.SMART);
我将其更改为
setDefaultCacheMode(CachingMode.OFF);
并且我没有再次看到错误。由于我不知道此调用的内部结构,是否有导致问题的原因?我看不到缓存模式与此问题之间的任何联系。如果自
以来进行了修改,它只会为
添加HTTP头,如果没有匹配的
等等。