Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Qué tecnología se utiliza para interceptar solicitudes web en el marco Spring MVC?

¿Qué tecnología se utiliza para interceptar solicitudes web en el marco Spring MVC?

¿Puede basarse en URL?

Basado en URL

También puede basarse en Spring boot

1.

En el desarrollo web, puede utilizar Filter y HandlerInterceptor para filtrar solicitudes web, los cuales pueden procesar solicitudes de clientes.

Filtro: es un componente del lado del servidor que puede interceptar información de solicitud y respuesta del lado del usuario y filtrar esta información.

El Interceptor en Spring MVC es similar al Filtro en el desarrollo de Servlet. Se utiliza principalmente para interceptar las solicitudes de los usuarios y procesarlas en consecuencia. También es la encarnación de las ideas de programación AOP. modo completado. Escuché: Solo las solicitudes a través de DispatcherServlet pasarán por la cadena del interceptor, y nuestras solicitudes de Servlet personalizadas no serán interceptadas

Consulte Spring: La diferencia entre filtro, interceptor y contacto AOP

Principio

Filtro: El filtro se basa en devoluciones de llamadas de funciones.

HandlerInterceptor: el interceptor se basa en el mecanismo de reflexión de Java y utiliza el modo proxy.

Diferentes alcances

Filtro: el filtro depende del contenedor de servlet y puede Solo se puede utilizar en un contenedor de servlets y se utiliza en un entorno web. No tiene nada que ver con Spring

HandlerInterceptor: el interceptor depende del contenedor de Spring y se puede llamar en el contenedor de Spring, sin importar en qué entorno se encuentre Spring en este momento

Filtro content

Filtro: los filtros pueden funcionar en casi todas las solicitudes (pueden proteger los recursos)

HandlerInterceptor: los interceptores solo pueden funcionar en acciones

Diferencias detalladas

Filtro: el control del filtro es relativamente aproximado. Solo puede procesar la solicitud cuando llega y envolver la solicitud y la respuesta

HandlerInterceptor: el interceptor proporciona un control más refinado y puede ser. procesado antes de que el controlador procese la solicitud, o se puede llamar más tarde, o se puede interceptar después de que la vista renderizada se presente al usuario y después de que se completen todas las solicitudes.

Interrupción

Filtro: el filtro es más complejo y necesita procesar la solicitud y el objeto de respuesta para activar una interrupción; se requieren acciones adicionales, como redirigir al usuario a la página de error

HandlerInterceptor: el contenido de la solicitud no puede. se puede modificar a través del interceptor, pero se puede hacer lanzando una excepción o devolviendo falso en el método preHandle Interrumpir para pausar la ejecución de la solicitud

Resumen

Si existen filtros e interceptores en el. al mismo tiempo: orden de ejecución: antes del filtrado - antes de la interceptación - Procesamiento de acciones - después de la interceptación - después del filtrado

Reemplazo: los interceptores pueden hacer básicamente todo lo que los filtros pueden hacer

—————— ——————————

Enlace original:/dreamstar613/article/details/106746128