连接本地主机(桌面)失败[关闭]
Posted
技术标签:
【中文标题】连接本地主机(桌面)失败[关闭]【英文标题】:Failed Connect Local Host (Desktop) [closed] 【发布时间】:2021-11-27 13:10:20 【问题描述】:您好,使用改造 api 调用方法,但使用本地 IP 地址仍然没有得到正确的响应。如果我在邮递员中测试,我得到了正确的 json 响应,但在 android studio 中我面临这个连接问题。
错误...> HTTP FAILED:java.net.SocketTimeoutException:在 60000 毫秒后无法从 /192.168.1.54(端口 58978)连接到 /192.168.1.52(端口 5000):isConnected 失败:ETIMEDOUT(连接超时)
【问题讨论】:
你在 Retrofit 中放的 ip 是什么?你用的是模拟器还是真机? 我在改造中使用本地主机 IP 地址 (192.168.1.52:5000)。并且正在使用真实设备。设备和系统都连接在同一个网络中 【参考方案1】:我之前遇到过这个问题,我记得如果您的服务器与应用程序在同一个网络中运行,您需要使用 10.0.2.2:PORT 或笔记本电脑网络 IP(如果您在真实环境中运行它)设备)。
所以你的端点应该是:
//For real device
private const val BASE_URL = "http://192.168.1.51:5000/"
//For emulator
private const val BASE_URL = "http://172.0.2.2:8080/"
请检查您的防火墙是否有问题,有时您必须允许访问(重新启动 PC 就足以知道是否是问题所在)
【讨论】:
你更正......在真实设备中使用,你所说的只使用了BASE_URL =“192.168.1.52:5000......”但无法连接......请您尝试提供任何其他想法来解决此问题 您使用的是 http:// 吗?还有最后一个“/”? Yaa 在 http // 和最后 / 之后使用相同的兄弟 今天终于它的工作兄弟在防火墙询问允许访问权限时启动 pc 我给了它现在工作的权限 Json 响应带有状态码 200,谢谢兄弟。为了您的支持【参考方案2】:可能是您电脑上的防火墙阻止了连接。
或者您已将服务器绑定到 localhost/127.0.0.1。
不要将您的服务器绑定到 IP 地址。
【讨论】:
正是兄弟,今天早上终于启动我的电脑防火墙会询问访问权限给定允许它工作,并获得 200 状态的 json 响应。以上是关于连接本地主机(桌面)失败[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
Visual Studio 2013 WebTest 请求失败:现有连接被远程主机强行关闭