Zuordnung eines globalen Front-Controller-Servlets, z. B. des Spring MVC-Dispatchers, zum /*-URL-Muster Bietet eine zentrale Steuerung für die Bearbeitung eingehender Anfragen. Diese Zuordnung kann jedoch den Zugriff auf statische Ressourcen wie CSS-Dateien, JavaScript-Skripte und Bilder beeinträchtigen.
Um dieses Problem zu lösen, ist ein vielschichtiger Ansatz erforderlich:
Implementieren Sie in der doFilter()-Methode des Filters die folgende Logik:
HttpServletRequest req = (HttpServletRequest) request; String path = req.getRequestURI().substring(req.getContextPath().length()); if (path.startsWith("/static")) { chain.doFilter(request, response); // Goes to default servlet. } else { request.getRequestDispatcher("/pages" + path).forward(request, response); }
Dies Der Filter ermöglicht die Bereitstellung statischer Ressourcen ohne Änderungen an der Adressleiste des Browsers. Darüber hinaus können Sie die Pfade „/static“ und „/pages“ anpassen, indem Sie Initialisierungsparameter im Filter verwenden.
Das obige ist der detaillierte Inhalt vonWie werden statische Ressourcen bereitgestellt, wenn ein Global Front Controller Servlet verwendet wird, das /* zugeordnet ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!