struts2 - Diferencia entre Token Interceptor y Token Session Interceptor?
(1)
tokenSession
extiende el interceptor de token
, ambos se utilizan para garantizar que solo se procesa una solicitud por token. La diferencia está en el manejo de los tokens inválidos. Cuando se encuentra el token
no válido, el interceptor token
simplemente devuelve el resultado invalid.token
. El interceptor tokenSession
en el token no válido intentará mostrar la misma respuesta que se habría mostrado en caso de un token válido.
Algunos pseudocódigos para ilustrar el flujo de trabajo del interceptor de tokenSession
:
intercept() {
if(validToken){
storeInvocation();
return invocation.invoke();
}else {
ActionInvocation storedInvocation = loadStoredInvocation();
// ...
return storedInvocation.getResultCode();
}
}
Sé que ambos interceptores se utilizan para evitar envíos de formularios duplicados. Pero, ¿cuál es realmente la diferencia entre ambos? ¿Cuál tiene ventaja extra sobre el otro?