android客户端与本地服务器的访问(服务器本地图片怎么转化成http格式让安卓手机访问)

最近自己撸了一套手机端和服务端的代码,但是其中遇到了一些问题特此记录一下,也给有需要的小伙伴们借鉴下

1.首先安卓客户端将图片上传到服务端,服务端将照片保存到本地(比如放在D:\uploads目录下)

android客户端与本地服务器的访问(服务器本地图片怎么转化成http格式让安卓手机访问)

这是电脑服务器端的显示,但是如果安卓想要访问到服务器端的这张照片的话,要怎么访问呢?

2.通过tomcat来将服务端本地的图片地址转化为Http://localhost:8080/fsfasd.jpg这样的形式来访问

   2.1 首先找到tomcat文件目录 tomcat/conf/server.xml

   在server.xml中查找<Host></Host>,在标签中添加如下标签<Context path="/file" docBase="D:/img" reloadable="true"/>,再通过localhost:8080/file地址来访问路境内的文件

像我这样:

android客户端与本地服务器的访问(服务器本地图片怎么转化成http格式让安卓手机访问)

这样就把我们的本地D盘下的uploads下面的文件路径转为为http://localhost:8080/file/这样的路径来访问了

(比如D:\uploads\1234.jpg就可以用http://localhost:8080/file/1234.jpg来访问了)

3.理论上上面那样操作就可以了,但是实际中还有其他的问题。

首先手机客户端不能直接访问localhost的路径,所以我们要把localhost转化为自己电脑对应的ip地址,保存图片的时候我们也吧ttp://自己电脑ip地址:8080/file/1234.jpg 这样的地址保存到数据库中,像我这样:

android客户端与本地服务器的访问(服务器本地图片怎么转化成http格式让安卓手机访问)然后通过chrome直接访问这个地址 你可以看到:

android客户端与本地服务器的访问(服务器本地图片怎么转化成http格式让安卓手机访问)

说明成功了。

4.上诉基本已经可以了,但是我之前还是访问不了,后面找了百度了一下 原来我用的编辑器(intellj 2018)里面还有个开关要开一下才能正常访问:

android客户端与本地服务器的访问(服务器本地图片怎么转化成http格式让安卓手机访问)

至此就可以实现安卓手机和电脑的数据访问了。

喜欢就点个赞吧!!!