2015-10-17 101 views
0

如何在Vertx中添加外部CSS/Javascript文件? 我設法發送index.html,它顯示。這個index.html有一些外部的Javascript/CSS文件,並且vertx沒有加載index.html中的CSS/Javascript文件。代碼如下。如何在vertx中添加外部css/js文件

public void start() { 
    vertx.createHttpServer().requestHandler(req -> { 
      req.response() 
       .putHeader("content-type", "text/html") 
       .sendFile("index.html"); 
     }).listen(8080); 
} 

和index.html中

<html> 
    <head> 
     <script src="someJsFile.js"></script> 
    </head> 
    <body> 
     Hello World 
    </body> 
</html> 

回答

0

這是vertx 3

配置路由器提供靜態內容

router.route().handler(StaticHandler.create()); 

我的靜態文件夾中src/main/resources/webroot

1

早在Vert.x 2時有簡單的例子,如何做到這一點:

import org.vertx.java.core.Handler; 
import org.vertx.java.core.http.HttpServerRequest; 
import org.vertx.java.platform.Verticle; 

public class Server extends Verticle { 
    public void start() { 
     vertx.createHttpServer().requestHandler(new Handler<HttpServerRequest>() { 
      public void handle(HttpServerRequest req) { 
       String file = req.path().equals("/") ? "index.html" : req.path(); 
       req.response().sendFile("webroot/" + file); 
      } 
     }).listen(8080); 
    } 
} 

在這裏看到:http://vertx.io/vertx2/(Java選項卡)

注意聲明;)

  • 在真實的生產網絡服務器中,您需要對路徑進行一些檢查以確保文件不在webroot之外提供!