2013-03-26 40 views
0

我們在Spring中有一組端點,並且對於每一個端點,我們可以要求用戶包含安全密鑰和令牌等。例如:Spring:檢查每個端點上的標準查詢參數

/endpoint?key=asdf&token=1234 

但是,我們不想重寫每一個端點。有沒有簡單的方法來攔截每個電話,檢查參數,然後傳遞給常規代碼?

+1

使用過濾器還是攔截器?如果令牌有效,只能轉發到常規代碼。 – 2013-03-26 19:24:46

+0

我試圖查找有關過濾器的信息,但我不明白它們是如何工作的。那裏有沒有好的參考? – Jason 2013-03-26 19:27:26

回答

2

Spring具有攔截器的概念,您可以在傳遞給適當的控制器之前預先處理請求。你可以定義你自己的攔截器實現HandleInterceptor或者擴展HandlerInterceptorAdapter看看這個:http://java.dzone.com/articles/using-spring-interceptors-your

+0

我相信@Jason正在使用spring web服務。它與彈簧mvc的設置相同嗎? – 2013-03-26 19:28:40

+0

我沒有使用Spring Webservices,但有一個EndpointInterceptor接口,它具有handleRequest方法。 – 2013-03-26 19:31:51