如何使用Spark-Java配置上下文路径

时间:2017-08-29 16:57:29

标签: java spark-java

如何使用带有jetty的com.sparkjava:spark-core配置上下文路径?

编辑:

而不是根应用上下文为http://mydomain.xyz,而是可以通过http://mydomain.xyz/custom-context访问该应用。

see this post on the same subject but in spring-boot

1 个答案:

答案 0 :(得分:2)

spark-java不直接支持将上下文设置为单独的设置,但仍然可以完成。可能最简单的方法是使用文档中概述的Path groups

文档中的示例:

path("/api", () -> {
    before("/*", (q, a) -> log.info("Received api call"));
    path("/email", () -> {
        post("/add",       EmailApi.addEmail);
        put("/change",     EmailApi.changeEmail);
        delete("/remove",  EmailApi.deleteEmail);
    });
    path("/username", () -> {
        post("/add",       UserApi.addUsername);
        put("/change",     UserApi.changeUsername);
        delete("/remove",  UserApi.deleteUsername);
    });
});

因此,通过将所有路由定义放在path - 调用中,您可以轻松地为所有URL设置类似上下文的基本路由。从理论上讲,您可以从配置文件加载此基本路径(或上下文),然后它将是:

String context = myConfig.getContext();
path(context, () -> {
    get("/", getHome());
    ...
});