Brauzerdən JSP səhifəsinə birbaşa giriş necə qarşısını almaq olar?
sobes.tech Süni İntellekt
AI-dan cavab
Bir neçə yanaşma istifadə oluna bilər:
-
JSP-ləri
WEB-INFqovluğunda saxlamaq:WEB-INFqovluğunun məzmunu brauzerdən birbaşa əlçatan deyil. Bu, standart və ən çox istifadə olunan üsuldur.// Layihənin strukturu WEB-INF/ web.xml jsp/ myPage.jsp classes/ lib/Bu halda
myPage.jsp-yə giriş servlet və ya başqa bir nəzarətçi vasitəsilə həyata keçirilir, oRequestDispatcher.forward()-u icra edir. -
web.xml-də giriş məhdudiyyətlərinin qurulması:<security-constraint>elementindən istifadə etməklə JSP səhifələrinə uyğun URL nümunələrinə giriş məhdudlaşdırıla bilər.<!-- web.xml --> <security-constraint> <web-resource-collection> <web-resource-name>JSP səhifələrini qoruyun</web-resource-name> <url-pattern>*.jsp</url-pattern> </web-resource-collection> <auth-constraint/> <!-- Boş auth-constraint heç kəsin girişinə icazə vermir --> </security-constraint>Bu üsul hər hansı JSP faylına edilən sorğuları ələ alır və birbaşa girişin qarşısını alır.
-
Servletlərdən nəzarətçi kimi istifadə etmək: JSP-ə birbaşa giriş yerinə, sorğular servlet-ə yönəldilir, o, məntiqi işləyir və sonra uyğun JSP səhifəsinə
WEB-INF-də yerləşən fayla forward edir.// Nümunə servlet @WebServlet("/myController") public class MyController extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // Sorğu işləmə məntiqi request.getRequestDispatcher("/WEB-INF/jsp/myPage.jsp").forward(request, response); } }
Ən effektiv və etibarlı üsul, JSP-ləri WEB-INF qovluğunda saxlamaq və servletlər (və ya digər nəzarətçilər) istifadə edərək onlara giriş təmin etməkdir. Bu, məntiq və təqdimatın ayrılmasını təmin edir və səhifələrə nəzarətli giriş imkanı verir.