解决使用retrofit在Android Studio模拟器上无法访问本地tomcat服务器的问题
程序员文章站
2022-05-28 08:32:31
...
解决retrofit在Android Studio模拟器上无法访问本地的tomcat服务器问题
近来突发奇想在本地搭建一个Tomcat服务器,使用retrofit来访问,结果却出现一直访问失败的问题,但是请求网上服务器却可以成功请求到,因此排除代码问题,归结原因于url路径的写法。
经过网上查找原因,得知url路径不能写为127.0.0.1或者localhost,因为这样请求的是模拟器本地,而不是我们电脑的本地。
网上的解决方法是将url路径改为10.0.2.2或者10.0.0.1,我按照其方法修改,无果。最后自己找到一个解决方法,用电脑的ip地址,在cmd上使用命令ipconfig,得到ipv4地址,即可以访问到。这里大家要确定这个地址可不可以用,可以打开模拟器上的浏览器,然后输入比如http://192.168.47.1:8080 192.168.47.1为你电脑的IP地址,8080为tomcat的端口号,如果能访问到tomcat的界面,即说明这个url是可以用的,url可以用的情况,本地服务器还是访问不到就是代码的问题了 。
最后贴上修改url后的代码RestClient.builder() .url("http://192.168.47.1:8090/myjson/moni.json")
Retrofit RETROFIT_CLIENT = new Retrofit.Builder()
.baseUrl(http://192.168.47.1)
.client(OkHttpHolder.OK_HTTP_CLIENT)
.addConverterFactory(ScalarsConverterFactory.create())
.addCallAdapterFactory(RxJava2CallAdapterFactory.create())
.build();
上一篇: Java使用SAX解析无根节点的xml文件并过滤不合法字符
下一篇: Ajax简单程序-访问本地资源