既然是用go来写服务器,那么怎样获取的静态资源?比如图片?

一、推荐使用专门的静态资源服务器

事先说明,一般情况下会有专门的服务器处理静态资源,比如nginx。

如果想显示图片,可以自己搭建一个静态服务器,把图片文本存放到静态服务器上,访问相对地址即可。

二、直接在go服务器中获取

项目结构为:

test

写出相应代码,映射本地静态图片的地址:

如果访问:http://localhost:9090/static/img/7.jpg

服务端收到请求后,把请求交给teststatic进行处理。teststatic方法首先使用

获取请求的静态资源名称,再调用

直接返回绝对地址的文件流,浏览器接收文件流后便可以显示图片。

三、获取js文件

既然可以读取图片,js当然也可以。

访问:http://localhost:9090/js/jquery-2.2.3.min.js

就可以访问到静态的js资源。

突然发现,这两个方法不是一模一样的嘛,所以可以这样改写服务端:

可以实现一样的效果。

四、总结

可以和这篇文章对比一下,我认为足以显示go的优点,就是简单直观,没有什么多余复杂的东西需要去理解:

java 尝试实现一个简单的静态资源服务器

发表评论

电子邮件地址不会被公开。 必填项已用*标注