Heim  >  Artikel  >  Web-Frontend  >  Anmeldung für JavaScript-Einstellungen

Anmeldung für JavaScript-Einstellungen

王林
王林Original
2023-05-22 09:55:07821Durchsuche

JavaScript ist eine häufig verwendete Programmiersprache, die normalerweise für interaktive Effekte und dynamische Datenverarbeitung auf Webseiten verwendet wird. In Webanwendungen ist die Anmeldung eine sehr wichtige Funktion, bei der es um Fragen der Sicherheit und des Datenschutzes von Benutzerinformationen geht. Heute werden wir untersuchen, wie Sie mithilfe von JavaScript Anmeldefunktionen einrichten, einschließlich der Validierung von Benutzereingaben, der Bearbeitung von Anmeldeanfragen, dem Merken von Benutzern und dem Abmelden usw.

Benutzereingabe überprüfen

Bevor wir die Anmeldefunktion einrichten, müssen wir sicherstellen, dass die vom Benutzer eingegebenen Informationen, wie z. B. Benutzername und Passwort, legal und gültig sind. Um Benutzereingaben zu validieren, können wir Methoden wie reguläre Ausdrücke, Formularvalidierung und serverseitige Authentifizierung verwenden.

Regulärer Ausdruck ist eine Sprache zum Abgleichen von Mustern, die uns helfen kann, zu überprüfen, ob die Eingabe gültig oder richtig formatiert ist. Beispielsweise kann ein einfacher regulärer Ausdruck prüfen, ob es sich bei der Eingabe um eine gültige E-Mail-Adresse handelt:

function validateEmail(email) {
  const re = /^(([^<>()[]\.,;:s@"]+(.[^<>()[]\.,;:s@"]+)*)|(".+"))@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}])|(([a-zA-Z-0-9]+.)+[a-zA-Z]{2,}))$/;
  return re.test(String(email).toLowerCase());
}

Die Formularvalidierung ist eine weitere Möglichkeit, Benutzereingaben zu validieren, indem Regeln und Fehleraufforderungen festgelegt werden. Überprüfen Sie die Gültigkeit der Eingabe. Beispielsweise können wir HTML- und JavaScript-Code verwenden, um ein Anmeldeformular zu validieren und dabei sicherzustellen, dass sowohl Benutzername als auch Passwort erforderlich sind und dass der Benutzername mindestens 6 Zeichen enthält:

<form id="loginForm" onsubmit="return validateForm()">
  <label for="username">Username:</label>
  <input type="text" id="username" name="username" required minlength="6"><br><br>
  <label for="password">Password:</label>
  <input type="password" id="password" name="password" required><br><br>
  <input type="submit" value="Log in">
</form>

<script>
function validateForm() {
  const username = document.getElementById("username").value;
  const password = document.getElementById("password").value;
  if (username.length < 6) {
    document.getElementById("username").setCustomValidity("Username must contain at least 6 characters");
    return false;
  } else {
    document.getElementById("username").setCustomValidity("");
  }
  if (password.length < 8) {
    document.getElementById("password").setCustomValidity("Password must contain at least 8 characters");
    return false;
  } else {
    document.getElementById("password").setCustomValidity("");
  }
  return true;
}
</script>

Die serverseitige Authentifizierung ist die letzte Verteidigungslinie, die sicherstellt, dass die vom Benutzer eingegebenen Informationen legal und gültig sind, da überprüft wird, ob Benutzername und Passwort mit den Datensätzen in der Datenbank übereinstimmen. Beispielsweise können wir Node.js und das Express-Framework verwenden, um die serverseitige Authentifizierung zu implementieren: Authentifizierung, wir benötigen sie, um Anmeldeanfragen zu verarbeiten und Sitzungen zu erstellen. Eine Sitzung ist eine Interaktionsmethode zwischen dem Server und dem Client, die es dem Server ermöglicht, für einen bestimmten Zeitraum Kontakt mit dem Client aufrechtzuerhalten und den Status und die Informationen des Benutzers auf dem Server zu speichern.

In Webanwendungen können wir Cookies und Sitzungen verwenden, um Benutzersitzungen zu erstellen und zu verwalten. Ein Cookie ist eine kleine Textdatei, die vom Webbrowser auf dem Computer des Benutzers gespeichert und beim nächsten Besuch der Website an den Server gesendet werden kann. Es handelt sich um eine serverseitige Datenstruktur, die der Benutzer speichern und verwalten kann Status und Informationen.

Zum Beispiel können wir JavaScript-Code verwenden, um eine Sitzung zu erstellen und Benutzerinformationen zu speichern:

app.post('/login', function(req, res) {
  const username = req.body.username;
  const password = req.body.password;
  if(username === 'admin' && password === 'admin') {
    res.status(200).send('Login successful');
  } else {
    res.status(401).send('Invalid username or password');
  }
});

In diesem Beispiel verwenden wir das XMLHttpRequest-Objekt, um die POST-Anfrage zu senden, und fügen hinzu Der Benutzername und das Passwort werden zur Überprüfung an den Server gesendet. Bei erfolgreicher Anmeldung sendet der Server die Benutzerinformationen und die Sitzungs-ID zurück, die wir in Cookies speichern können. Anschließend leiten wir den Benutzer zur Startseite weiter und halten die Benutzersitzung mithilfe der Informationen im Cookie aufrecht.

Benutzer merken

Nachdem sich der Benutzer angemeldet hat, können wir das Benutzererlebnis verbessern, indem wir uns den Benutzernamen und das Passwort merken und dem Benutzer ermöglichen, sich beim nächsten Besuch automatisch anzumelden Webseite. Dies kann durch die Speicherung des Benutzernamens und des Passworts in Cookies erreicht werden.

Zum Beispiel können wir JavaScript-Code verwenden, um sich den Benutzernamen und das Passwort des Benutzers zu merken:

function login(username, password) {
  const xhr = new XMLHttpRequest();
  xhr.open('POST', '/login');
  xhr.setRequestHeader('Content-Type', 'application/json');
  xhr.onload = function() {
    if (xhr.status === 200) {
      const response = JSON.parse(xhr.responseText);
      const user = response.user;
      const sessionId = response.sessionId;
      // Save user information and sessionId in cookies
      document.cookie = `user=${user}`;
      document.cookie = `sessionId=${sessionId}`;
      // Redirect user to home page
      window.location.href = '/home';
    } else {
      alert('Invalid username or password');
    }
  };
  const data = JSON.stringify({ username: username, password: password });
  xhr.send(data);
}

In diesem Beispiel verwenden wir ein Kontrollkästchen für die Option „An mich erinnern“. Wenn der Benutzer diese Option aktiviert, speichern wir den Benutzernamen und das Passwort in einem Cookie und legen die Ablaufzeit auf 30 Tage fest. Wenn der Benutzer diese Option abbricht, löschen wir den Benutzernamen und das Passwort aus dem Cookie.

Abmelden

Schließlich müssen wir Benutzern eine bequeme Möglichkeit bieten, sich abzumelden, um eine versehentliche oder illegale Nutzung des Benutzerkontos zu verhindern. Das Abmelden erfordert die Zerstörung der Benutzersitzung und das Löschen der Informationen in Cookies.

Zum Beispiel können wir JavaScript-Code verwenden, um uns abzumelden:

function rememberMe() {
  const username = document.getElementById('username').value;
  const password = document.getElementById('password').value;
  if (document.getElementById('rememberMe').checked) {
    // Save username and password in cookies for 30 days
    const expires = new Date(Date.now() + 30 * 24 * 60 * 60 * 1000).toUTCString();
    document.cookie = `username=${username}; expires=${expires};`;
    document.cookie = `password=${password}; expires=${expires};`;
  } else {
    // Remove username and password from cookies
    document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 UTC;";
    document.cookie = "password=; expires=Thu, 01 Jan 1970 00:00:00 UTC;";
  }
}

In diesem Beispiel verwenden wir das XMLHttpRequest-Objekt, um eine POST-Anfrage zu senden und die Sitzungs-ID an den zu senden Server. Der Server zerstört die Benutzersitzung und gibt einen Erfolgsstatuscode zurück. Anschließend entfernen wir die Benutzerinformationen und die Sitzungs-ID aus dem Cookie und leiten den Benutzer zur Anmeldeseite weiter.

Fazit

In diesem Artikel haben wir untersucht, wie Sie JavaScript verwenden, um Anmeldefunktionen einzurichten, einschließlich der Validierung von Benutzereingaben, der Bearbeitung von Anmeldeanfragen, dem Merken von Benutzern und dem Abmelden usw. Die Anmeldung ist eine sehr wichtige Funktion in Webanwendungen und beinhaltet wichtige Themen wie die Sicherheit und den Schutz der Privatsphäre von Benutzerinformationen. Durch den Einsatz von Technologien wie JavaScript und serverseitiger Authentifizierung können wir sicherstellen, dass die von Benutzern eingegebenen Informationen rechtmäßig und gültig sind, und das Benutzererlebnis und die Sicherheit verbessern.

Das obige ist der detaillierte Inhalt vonAnmeldung für JavaScript-Einstellungen. 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