Uitvoering van een aanmeldingspagina voor een webtoepassing is bijna triviaal, maar wel een belangrijke rol in het creëren van een veilige website. Hoewel veel meer inspanning nodig is in het echt het beveiligen van uw toepassing, is gewoon instellen dat gebruikers moeten inloggen de eerste stap in het beschermen van uw gegevens tegen nieuwsgierige ogen. Doordat gebruikers naar uw site te ondertekenen, kunt u ook aanpassen hun ervaring met de gebruiker-specifieke thema's of functies en bijhouden van hun bewegingen in uw toepassing voor gerichte marketing of zelfs eenvoudige bug tracking.
Wat die u nodig hebt
- De ontwikkelomgeving van Java (zoals Eclipse of soortgelijke bewerken/build nut)
- Web application server (zoals Apache Tomcat)
De pagina maken
Maak een nieuwe Java Server pagina (JSP) in je editor naar keuze. Noem maar iets aangewezen, zoals "login.jsp".
Het volgende formulier toevoegen aan uw login.jsp bestand:
(Merk op dat de werkelijke servlet--LoginServlet--is nog niet gemaakt; als u dit testen, krijgt u waarschijnlijk een "Page Not Found" error).
De pagina opslaat. Kun je het in een browser als u wil, maar er geen functionaliteit op dit moment is; u krijgt een fout als u probeert voor te leggen.
Maak twee aanvullende pagina's voor testdoeleinden. Één naam "success.html" en de andere "failure.html". Omdat deze uitsluitend bestemd zijn voor het testen op dit moment, kun je welke inhoud u wilt Zorg ervoor dat het verschil tussen de twee is duidelijk, zodat je zeker weet welke één u eindigen op.
Maak de Servlet
Maak een nieuwe Java servlet genaamd "LoginServlet". Als u van een geïntegreerde ontwikkelomgeving (IDE) zoals verduistering of NetBeans gebruikmaakt, moet dit vrij triviale.
Overschrijf de methode van de "doPost" in uw LoginServlet als zodanig:
openbare overschrijven doPost (HttpServletRequest req, HttpServletResponse onderzoek) werpt ServletException, IOException {}
String userName = req.getParameter("user_name"); String password = req.getParameter("pwd"); if ("bob".equals(userName) && "testing".equals(password)) { res.redirect("/success.html"); } else { res.redirect("/failure.html"); }
}
Bouwen en testen van uw pagina door te gaan naar uw eerste login.jsp in uw browser. Als u "bob" en "testen" om uw gebruikersnaam en wachtwoord, respectievelijk, moet u eindigen op "success.html"; Als u iets anders opgeeft, moet u eindigen op "failure.html".
- In een "echte" systeem, moet u uw gebruikersgegevens te trekken uit een gegevensarchief of iets dergelijks (dat wil zeggen een SQL-database) en vergelijken met die in plaats van hard gecodeerde waarden.
- Overweeg gebruikers met succes in een sessie van een soort om ervoor te zorgen dat ze altijd toegang hebben tot waar ze toegang tot mogen opslag ingelogd.
- U kunt uw gebruiker terug naar de loginpagina, als de login poging is mislukt en geven een boodschap aan hen in plaats van om te buigen naar een andere pagina helemaal.
- Hebt u problemen indienen van het formulier, moet u wellicht handmatig bewerken of uw webtoepassing web.xml bestand om te configureren hoe de servlet wordt aangevraagd als action-attribuut van het formulier.