Vert.x系列,加载静态资源文件

Posted 皮花猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vert.x系列,加载静态资源文件相关的知识,希望对你有一定的参考价值。

在web开发中,避免不了要加载css、js、图片相关的各种静态资源文件,在Vert.x中是怎么做到的呢?


在前一节中,我们知道Vert.x对前端的一切请求都是基于Router和Handler来处理的。静态资源文件也是一种请求。那么是不是在Router中创建一个静态资源的Handler就可以了!


答案当然是可以的。


请看代码:

package com.javafm.vertx;
import io.vertx.core.AbstractVerticle;import io.vertx.core.http.HttpServer;import io.vertx.ext.web.Router;import io.vertx.ext.web.handler.StaticHandler;
public class SimpleHttpServerVerticle extends AbstractVerticle {
@Override public void start() throws Exception { HttpServer server = vertx.createHttpServer();
Router router = Router.router(vertx);
router.route().handler(StaticHandler.create());
server.requestHandler(router); server.listen(8080); }
}

核心代码就是router.route().handler(StaticHandler.create())。创建好了静态资源的Hnadler怎么使用呢?


按照Vert.x的默认配置,静态资源文件需要放在classpath的webroot目录下。

为了方便演示,笔者在resources文件夹中创建一个webroot,然后在webroot目录下再创建一个base.css文件。最后目录结构如图一。


(图一)


再次启动服务,在浏览器访问这个css文件。


(图二)



以上是关于Vert.x系列,加载静态资源文件的主要内容,如果未能解决你的问题,请参考以下文章

Vert.x系列(零),开篇,认识Vert.x并创建一个Http服务

Vert.x系列04 - 你意想不到的那些路由规则

Vert.x JDBC 客户端:无法加载所需的实现

Vert.x系列,EventBus事件总线

Hexo瞎折腾系列 - 使用hexo-neat插件压缩页面静态资源

Vert.x系列,Http Router