ich eine Menge von Ressourcen gesucht, aber keiner war angemessen mein problem.I auf single page application (SPA)
Projekt arbeite, und ich möchte ein logged in user
zu stay logged in
, wenn er die Seite aberohneRouting aktualisiert.Wie authentifiziert man eingeloggten Benutzer beim Auffrischen der einzelnen Seite Anwendung mit AngularJS ohne "Routing"?
habe ich versucht, session authentication servlet
im Haupt controller
der Seite (das Servlet überprüft, ob die Sitzung vorhanden ist oder nicht) zu nennen, aber es hat nicht funktioniert.
Hinweis: Die Sitzung wird erstellt, sobald der Benutzer log in
oder sing up
. Hier ist SessionAuthServlet.java
:
HttpSession session = request.getSession(true);
User u=(User) session.getAttribute("usersession");
try{
response.setContentType("application/json; charset=UTF-8");
PrintWriter out = response.getWriter();
if(u != null)
{
out.println("{\"+success+\"}");
out.close();
}
else
{
out.println("{ \"result\": \"fail\"}");
out.close();
}
}catch (IOException e) {
e.printStackTrace();
}
MainController
in HTML einzigen Seite Anwendung:
appvar.controller('MianController',['$scope','$http','$rootScope',function($scope, $http,$rootScope) {
$rootScope.sessionvalid=function(){
$http.get("http://localhost:8080/MyProject/SessionAuthServlet")
.success(function(response) {
if (response.result=="fail")
{
//***Show the view for not logged user
}
//***Show the view for logged user
}
$rootScope.sessionvalid();
});
}
}]);
Irgendwelche Ideen, wie man damit umgehen?
Bitte leite mich
Dank
Verwenden Sie lokalen Speicher oder Sitzung –