无法连接到 localhost/127.0.0.1:5000
Failed to connect to localhost/127.0.0.1:5000
我正在使用 Retrofit2 发出网络请求,但端点在我的本地机器上。
所以我的基础 URL 是
private val BASE_URL = "http://localhost:8000/"
,但它给了我这个回应
Failed to connect to localhost/127.0.0.1:5000
所以我做了一些搜索,发现我需要使用我的本地 IP 地址如下
private val BASE_URL = "http:192.168.1.15//:8000/"
,但后来我收到了这个回复
Response{protocol=http/1.1, code=404, message=Not Found, url=http://192.168.1.15//:8000/api/Home/RegisterShop}
知道如何解决这个问题吗?
你应该做的事情:
- 使用您的本地 IP 地址而不是 localhost 或 127.0.0.1
- 虽然在本地,但没有 SSL,因此您需要向您提供清单:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"
和 <application>
:
<application
android:usesCleartextTraffic="true">
在那之后它应该工作...
但请记住,如果你去生产,CleartextTraffic="true" 不是一个好主意。
如果您使用的是 Android 模拟器,主机的 IP 地址将为 10.0.2.2.
所以你的情况是 http://10.0.2.2:8000/
。
我正在使用 Retrofit2 发出网络请求,但端点在我的本地机器上。
所以我的基础 URL 是
private val BASE_URL = "http://localhost:8000/"
,但它给了我这个回应
Failed to connect to localhost/127.0.0.1:5000
所以我做了一些搜索,发现我需要使用我的本地 IP 地址如下
private val BASE_URL = "http:192.168.1.15//:8000/"
,但后来我收到了这个回复
Response{protocol=http/1.1, code=404, message=Not Found, url=http://192.168.1.15//:8000/api/Home/RegisterShop}
知道如何解决这个问题吗?
你应该做的事情:
- 使用您的本地 IP 地址而不是 localhost 或 127.0.0.1
- 虽然在本地,但没有 SSL,因此您需要向您提供清单:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"
和 <application>
:
<application
android:usesCleartextTraffic="true">
在那之后它应该工作... 但请记住,如果你去生产,CleartextTraffic="true" 不是一个好主意。
如果您使用的是 Android 模拟器,主机的 IP 地址将为 10.0.2.2.
所以你的情况是 http://10.0.2.2:8000/
。