我正在使用 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}
你知道怎么解决这个问题吗?
3条答案
按热度按时间rkue9o1l1#
如果您使用的是 Android 模拟器,主机的IP地址将为10.0.2.2。
所以在你的例子中它是
http://10.0.2.2:8000/
。vsaztqbk2#
您应该做的事情:
1.使用本地IP地址,而不是localhost或127.0.0.1
1.在本地时,没有SSL,因此您需要将以下内容放入清单:
以及
<application>
:之后,它应该工作...但请记住,如果你去prod,CleartextTraffic=“true” 不是一个好主意。
laik7k3q3#
在我的例子中,本地服务器地址是
http://127.0.0.1:5000
(我使用flask作为我的服务器,它默认运行在端口5000上)