You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

启动应用调用WS获取数据时遭遇连接拒绝错误求助

排查Web Service数据获取失败(Connection Refused)的思路

结合你提供的应用日志和错误信息,这个Connection refused错误加上Proxy Selector的调试输出,大概率是网络连通性或者代理配置出了问题,我给你梳理几个实用的排查步骤:

  • 先确认基础网络连通性
    先抛开应用,直接测试设备能不能访问目标Web Service的地址:

    • 如果是Android设备,可以用adb shell curl <你的WS地址>来测试,或者用设备自带的浏览器打开WS的WSDL页面(如果有的话)。
    • 常见的坑:本地开发时手机和服务器不在同一个WiFi、WS的URL写错(比如端口号不对、域名拼写错误)、服务器根本没启动。这些都会直接导致连接被拒绝。
  • 重点检查代理配置
    日志里反复出现Proxy Selector的相关输出,说明应用在尝试通过代理建立连接,这很可能是问题的核心:

    • 先看看设备的系统代理是不是开着?如果你的测试环境不需要代理,直接关掉系统代理再试一次。
    • 检查ADF Mobile应用的内部配置:比如adf-config.xml里有没有配置代理参数,或者应用代码里有没有手动设置代理选择器的逻辑,确认代理地址、端口是不是正确的,有没有过期或者失效。
    • 可以临时加一段代码禁用代理测试,看看能不能绕过这个问题:
      System.setProperty("java.net.useSystemProxies", "false");
      

    这只是临时验证用,后续要根据实际环境调整配置。

  • 验证服务器端状态
    确认Web Service所在的服务器是否正常运行:

    • 检查服务器控制台日志,确认服务已经启动,监听的端口和你应用里配置的一致。
    • 检查服务器的防火墙/安全组,有没有允许设备所在的IP访问WS的端口,很多时候连接被拒是因为防火墙拦截了请求。
    • 如果是HTTPS的服务,虽然这次错误是连接层面的,但也可以顺便确认下证书是否有效,设备是否信任该证书(不过这个概率较低)。
  • 补充日志定位细节
    你可以开启更详细的网络日志:在ADF Mobile的日志配置里把网络相关的日志级别调到DEBUG,这样能看到更多请求细节,比如实际发起请求的URL是什么、DNS解析是否正常、有没有更具体的错误堆栈信息,帮助你精准定位问题。

内容的提问来源于stack exchange,提问作者Serrek fi bir

火山引擎 最新活动