0
我試圖通過讓Spring的攔截器獲得對RestAPI的授權(HandlerInterceptorAdapter)PreHandle方法檢查用戶是否處於所需角色,然後在範圍命中請求的動作控制器。但是,這要求我爲每個操作(URL路徑)提供所需角色的ID。這是我的當前設置:向Spring MVC攔截器添加參數
public class AuthorizationInterceptor extends HandlerInterceptorAdapter{
@Autowired
IUserService us;
//before the actual handler will be executed
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler, Integer roleId)
throws Exception {
String userId = request.getHeader("UserId");
if(!us.isUserInRole(Long.parseLong(userId), roleId))
return false;
return true;
}
}
和(的部分)的servlet-context.xml中:
<interceptors>
<interceptor>
<mapping path="/" />
<mapping path="https://stackoverflow.com/users/**" />
<beans:bean class="com.lumi.api.interceptors.AuthorizationInterceptor"></beans:bean>
</interceptor>
</interceptors>
我的問題是,我閹可在參數角色ID與傳遞servlet-context配置中的bean。我似乎無法在文檔中找到任何內容。我想我曾經看到類似的東西:
<mapping path="/" />
<parameter name="something" value="some value">
但我不確定。
完美。那正是我需要的。謝謝! – MichaelCleverly 2015-02-05 13:53:24