2011-11-21 95 views
0

我正在嘗試使用Jersey(與Spring一起運行)實現一些自定義身份驗證。我已經使認證邏輯正常工作,並將其放置在ContainerRequestFilter中。服務器上的自定義身份驗證

我目前遇到的問題是如何確定如果認證失敗而無需爲每個端點方法添加自定義代碼片段,實際拒絕或重定向請求。

我試着在ContainerRequestFilter過濾器方法中更改URI和方法類型,但它不起作用。雖然請求的屬性發生了變化,但Jersey仍然會執行原始方法,即使身份驗證失敗。

我可以在每個方法中添加一個片段來檢查認證是否已經失敗,如果是這樣,退出方法,但那種失敗擺在首位使用過濾器的整個點...

我該如何處理這種情況?

回答

2

如果身份驗證失敗,請將WebApplicationException與您希望從請求過濾器返回給客戶端的所需響應一起引發。