我正在嘗試在我的Dropwizard實例中添加自定義標頭篩選器,以檢查請求的版本是否同步到Dropwizard實例的版本。Dropwizard中的自定義碼頭篩選器
我看到你可以使用FilterBuilder
添加碼頭CrossOriginFilters
。但是,我無法弄清楚如何設置自定義過濾器。
謝謝
我正在嘗試在我的Dropwizard實例中添加自定義標頭篩選器,以檢查請求的版本是否同步到Dropwizard實例的版本。Dropwizard中的自定義碼頭篩選器
我看到你可以使用FilterBuilder
添加碼頭CrossOriginFilters
。但是,我無法弄清楚如何設置自定義過濾器。
謝謝
通過環境類。
https://dropwizard.github.io/dropwizard/manual/core.html#environments
@Override
public void run(MyApplicationConfiguration configuration, Environment environment) {
environment.servlets().addFilter("Custom-Filter-Name", new MyCustomFilter()).addMappingForUrlPatterns(EnumSet.allOf(DispatcherType.class), true, "/*");
}
你可以選擇調度類型,通過改變EnumSet.allOf(DispatcherType.class)
這是我如何得到它使用Dropwwizard 0.7.1工作(API的出現從其他的例子改變了我的發現有)
在應用程序的運行方式:
final FilterRegistration.Dynamic cors = environment.servlets().addFilter("crossOriginRequsts", CrossOriginFilter.class);
cors.addMappingForUrlPatterns(EnumSet.allOf(DispatcherType.class), true, "/*");
您能否更新鏈接? –
api文檔已經移動,所以我已經更新了最好的我可以。 –
在新的dropsizard 0.7+中它是這樣做的:environment.servlets()。addFilter(「/ *」,new CrossOriginFilter()); – Maksim