我是vertx-web的新手。我正在使用ruby vertx-web构建Web应用程序。我想提供静态文件(index.html)。和我的index.html打包在webroot文件夹中。 我的index.html文件将加载http://localhost:8088。我需要为localhost提供index.html:8088 / demo或localhost:8088 / test OR http://localhost:8088/ *(*可以是任何内容,它应该提供index.html)。
目录结构:
前端
根目录
sever.rb
任何帮助将不胜感激。
答案 0 :(得分:0)
试试这个:
router.route("/static/*").handler(&VertxWeb::StaticHandler.create().setWebRoot("webroot").method(:handle))
答案 1 :(得分:0)
您可以将默认路由定义为最后路由,并设置仅发送index.html文件的处理程序:
router.route().handler(rc -> {
rc.response().sendFile("webroot/index.html");
});
这是Java版本,但将其转换为Ruby应该很容易。
答案 2 :(得分:0)
以下代码适用于我。
router.route_with_regex(".*/index.html").handler() { |routingContext| router.route().handler(&VertxWeb::StaticHandler.create().method(:handle))
response = routingContext.response()
response.put_header("content-type", "text/html")
response.set_chunked(true)
response.send_file("webroot/index.html")
}