Heim >Web-Frontend >js-Tutorial >AngularJs Benutzer-Login-Interaktion und -Verifizierung, Blockieren der FQ-Verarbeitung, ausführliche Erklärung

AngularJs Benutzer-Login-Interaktion und -Verifizierung, Blockieren der FQ-Verarbeitung, ausführliche Erklärung

小云云
小云云Original
2018-01-20 14:09:571526Durchsuche

In diesem Artikel wird hauptsächlich der Umgang mit AngularJs-Benutzeranmeldeproblemen ausführlich beschrieben, einschließlich der Interaktion und Überprüfung sowie der Blockierung der FQ-Verarbeitung. Interessierte Freunde können darauf verweisen.

1. Statische Seitenkonstruktion und ng-Formularüberprüfungsimplementierung:


<p class="register-frame-all">
  <p class="register-frame">
   <p class="register-msg">
    <i></i>
    <form name="loginForm" ng-submit="loginAction()">
     <p class="form-group">
      <p class="input-group">
       <span class="input-group-addon register-user"></span>
       <input autocomplete="off" type="number" class="form-control" placeholder="请输入手机号" required ng-model="loginData.loginName" name="loginName">
      </p>
      <p class="input-group">
       <span class="input-group-addon register-pwd"></span>
       <input type="password" class="form-control" placeholder="请输入密码" required ng-model="loginData.pwd" name="pwd">
      </p>
      <button type="submit" class="btn btn-block btn-danger"
        ng-disabled="!( (loginForm.loginName.$valid) && (loginForm.pwd.$valid) )">登录</button>
      <em></em>
     </p>
    </form>
   </p>
   <p class="register-pic" ng-style="registerRnum"></p>
  </p>
 </p>

2. Definieren Sie den Controller für die Benutzeranmeldung. Verwenden Sie im Controller die HTTP-Funktion Dienst zur Verwaltung der Anmeldeschnittstelle:


$http({
    url:G.apiUrl_dl+&#39;loginByPhone&#39;,
    method:&#39;post&#39;,
    data:{
     &#39;phone&#39;:loginName,
     &#39;pwd&#39;:pwd
    },
    headers:{&#39;Content-Type&#39;:&#39;application/x-www-form-urlencoded&#39;},
    transformRequest: function(obj) {
     var str = [];
     for(var p in obj){
      str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
     }
     return str.join("&");
    }
   }).success(function(data){
    // 登录成功后的操作...18     19    });

3. Wenn die Daten des Benutzers nach erfolgreicher Anmeldung in einem Cookie oder einer Sitzung gespeichert werden, verwenden Sie den $state-Dienst, um zu springen die angegebene Seite:


// 登录成功
    if($scope.loginActionData.token){
     sessionStorage.setItem("token", $scope.loginActionData.token);
     sessionStorage.setItem("tsname", $scope.loginActionData.name);
     sessionStorage.setItem("rights", $scope.loginActionData.rights);
     sessionStorage.setItem("userId", $scope.loginActionData.userId);
     sessionStorage.setItem("departmentsId", $scope.loginActionData.departmentsId);
     sessionStorage.setItem("departmentsName", $scope.loginActionData.departmentsName);
     $state.go(&#39;index&#39;);
    }else{
     // 登录失败的弹框提示
     $(&#39;#loginAction&#39;).modal(&#39;show&#39;);
    }

4 Der nächste Schritt besteht darin, zu verhindern, dass Benutzer die Anmeldeseite durch andere Methoden überspringen (z. B. durch direkte Eingabe der Adresse in Adressleiste zum Aufrufen der Seite), um FQ-Vorgang zu verhindern:

Ich habe den Vorgang dieser Methode in die Ausführungsmethode eingefügt, die wie zuvor erwähnt jedes Mal vor dem Aufrufen einer Seite überprüft wird ob der Benutzer rechtmäßig angemeldet ist. Nach der Anmeldung lassen wir ihn zur Anmeldeseite springen


angular.module.run([&#39;$rootScope&#39;,&#39;$state&#39;,function($rootScope,$state){
  $rootScope.$on(&#39;$stateChangeStart&#39;,function(event,toState){
   // 防止FQ
   if(!(sessionStorage.getItem("token")))$state.go(&#39;register&#39;);
  });
 }]);

Verwandte Empfehlungen:

Tutorial zum Aufbau einer AngularJS-Umgebung für Anfänger

Detaillierte Erläuterung der Methode zur Implementierung benutzerdefinierter Anweisungen in AngularJS

Detaillierte Erläuterung der Methode zur Implementierung benutzerdefinierter Anweisungen und Befehlskonfigurationselemente in AngularJS

Das obige ist der detaillierte Inhalt vonAngularJs Benutzer-Login-Interaktion und -Verifizierung, Blockieren der FQ-Verarbeitung, ausführliche Erklärung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn