如何使用dropwizard为每个URL提供多个静态文件?

时间:2018-02-09 12:08:57

标签: java http dropwizard assetbundle

我用过,

    bootstrap.addBundle(new AssetsBundle("/assets", "/", "a.js"));
    bootstrap.addBundle(new MultiPartBundle());

但我需要提供一个文件,在输入/ b时输入b.js,输入/ c时输入c.js.

怎么做?

1 个答案:

答案 0 :(得分:0)

您可以通过将resourcePath指定为实际文件来映射特定资源。因此,使用您提到的示例,您将如何实现这一目标:

bootstrap.addBundle(new AssetsBundle("/assets/a.js", "/a", null, "a"));
bootstrap.addBundle(new AssetsBundle("/assets/b.js", "/b", null, "b"));
bootstrap.addBundle(new AssetsBundle("/assets/c.js", "/c", null, "c"));

但是,我认为这不是一个好习惯,随着时间的推移会变得无法管理,以保持每个资源的URL映射。

<强>更新 对于更易于维护的映射列表,我建议使用Configurable Assets Bundle for Dropwizard之类的东西,其中可以在配置文件中描述多个映射。我创建了一个简单的DW project,它使用了这个lib并复制了问题中描述的行为。