Heim > Web-Frontend > js-Tutorial > Hauptteil

Organisieren Sie die Anwendung von Cookie-Operationsobjekten in JavaScript

WBOY
Freigeben: 2022-08-05 11:35:33
nach vorne
1440 Leute haben es durchsucht

Dieser Artikel vermittelt Ihnen relevantes Wissen über Javascript, das hauptsächlich Probleme im Zusammenhang mit der Anwendung von Cookie-Operationsobjekten aufzeigt. Cookies bieten eine nützliche Methode für Webanwendungen, um benutzerbezogene Informationen zu speichern .

Organisieren Sie die Anwendung von Cookie-Operationsobjekten in JavaScript

【Verwandte Empfehlungen: Javascript-Video-Tutorial, Web-Frontend

So bedienen Sie Cookies in Javascript

Cookies bieten eine nützliche Methode für Webanwendungen, um benutzerbezogene Informationen zu speichern. Wenn ein Benutzer beispielsweise unsere Website besucht, können Cookies verwendet werden, um Benutzereinstellungen oder andere Informationen zu speichern, sodass die Anwendung beim nächsten Besuch unserer Website durch den Benutzer die zuvor gespeicherten Informationen abrufen kann.

Was zum Teufel ist ein Cookie?

Ein Cookie ist eine kleine Textinformation, die zusammen mit Benutzeranfragen und Seiten zwischen dem Webserver und dem Browser übertragen wird. Die im Cookie enthaltenen Informationen können von der Webanwendung bei jedem Besuch der Website gelesen werden.

Cookies scheinen das Problem der Speicherung von Benutzerinformationen zu lösen. Zum Beispiel

  • Wenn ein Benutzer eine Webseite besucht, kann der Name des Benutzers in einem Cookie gespeichert werden.

  • Wenn der Benutzer die Seite das nächste Mal besucht, merkt sich das Cookie den Benutzernamen.

Cookies können Benutzerinformationen auf allen Webseiten speichern. Es enthält Informationen in Form einer Zeichenfolge und wird in Form von Schlüssel-Wert-Paaren, also im Schlüssel=Wert-Format, gespeichert. Jedes Cookie wird normalerweise durch „;“ getrennt.

username = Daisy Green
Nach dem Login kopieren

Cookie-Nachteile

Cookies können deaktiviert werden. Wenn ein Benutzer großen Wert auf den Schutz seiner Privatsphäre legt, deaktiviert er wahrscheinlich die Cookie-Funktion des Browsers.

Cookies hängen mit dem Browser zusammen. Dies bedeutet, dass Cookies, die von verschiedenen Browsern gespeichert wurden, auch dann nicht voneinander abgerufen werden können, wenn Sie dieselbe Seite besuchen.

Cookies können gelöscht werden. Da es sich bei jedem Cookie um eine Datei auf der Festplatte handelt, ist es wahrscheinlich, dass sie vom Benutzer gelöscht wird.

Die Cookie-Sicherheit ist nicht hoch genug. Alle Cookies werden in Dateien in Form von Klartext aufgezeichnet. Wenn Sie also Benutzernamen, Passwort und andere Informationen speichern möchten, ist es am besten, diese im Voraus zu verschlüsseln.

So funktioniert Cooke

Der Server sendet einige Daten in Form eines Cookies an den Browser des Besuchers. Sofern Ihr Browser die Annahme von Cookies zulässt. Es wird als reiner Textdatensatz auf der Festplatte des Besuchers gespeichert.

Wenn ein Besucher zu einer anderen Seite springt, sendet der Browser dasselbe Cookie zum Abruf an den Server. Nach dem Abruf weiß oder merkt sich Ihr Server, was zuvor gespeichert wurde.

Zusammensetzung des Cookies

Cookie In den HTTP-Header-Informationen lautet das Header-Format von HTTP Set-Cookie wie folgt:

Set-Cookie: name=value; [expires=date]; [path=path];
[domain=domainname]; [secure];
Nach dem Login kopieren

Ein spezifisches Beispiel im HTTP-Code:

<meta http-equiv="set-cookie" content=" cookieName = cookieValue;
expires=01-Dec-2006 01:14:26 GMT; path=/" />
Nach dem Login kopieren

Wie aus dem obigen Format ersichtlich ist , Cookie besteht aus den folgenden Teilen.

Name/Wert-Paare

Name/Wert werden durch Semikolons getrennt. Jede Webseite hat maximal ein Cookie. Für Wertwerte ist es am besten, sie mit encodeURIComponent zu kodieren.

Domain

Domain-Domainname ist ebenfalls Teil des Cookies. Standardmäßig wird der Domainname der vom Benutzer besuchten Webseite im Cookie gespeichert. Wenn der Domänennamenwert dieses Cookies festgelegt ist, bedeutet dies, dass alle Server auf dem Domänennamen, nicht nur der Server, den Sie besuchen, auf dieses Cookie zugreifen können. Das Format zum Festlegen des Domänennamens lautet wie folgt: domain=http://xyz.com

Pfad

Legen Sie fest, welche Verzeichnis-Webseiten im Verzeichnis auf Cookies für einen bestimmten Server zugreifen können. Das Format zum Festlegen des Pfads ist : path = /movies

Expires

Legen Sie die Cookie-Überlebenszeit fest. Standardmäßig wird das Cookie automatisch gelöscht, wenn der Benutzer den Browser schließt Browser. Wenn Sie dieses Element festlegen, können Sie die Lebensdauer des Cookies verlängern. Legen Sie die Zeit in js mithilfe der GMT-Form des Date-Objekts fest. Das Format lautet wie folgt: Expires = date.toGMTString()

Secure

Nehmen Sie den Wert true oder false. Wenn „true“, muss das Cookie über https gesendet werden.

js Cookie

In JS können Sie das Cookie-Attribut des Document-Objekts verwenden, um Cookies zu manipulieren. JS kann die Cookies der aktuellen Webseite lesen, erstellen, ändern und löschen. Schauen wir uns die spezifischen Vorgänge an.

Cookie erstellen

JS kann Cookies mithilfe des document.cookie-Attributs erstellen. Cookies können erstellt werden durch:

document.cookie = "username=Daisy Green";
Nach dem Login kopieren

Sie können auch ein gültiges Datum (UTC-Zeit) hinzufügen. Standardmäßig werden Cookies gelöscht, wenn der Browser geschlossen wird:

document.cookie = "username=Daisy Green; expires=Mon, 26 Aug 2019 12:00:00 UTC";
Nach dem Login kopieren

Mit dem Pfadparameter können Sie dem Browser mitteilen, zu welchem ​​Pfad das Cookie gehört. Standardmäßig gehört das Cookie zur aktuellen Seite.

document.cookie = "username=Daisy Green; expires=Mon, 26 Aug 2019 12:00:00 UTC"; path=/";
Nach dem Login kopieren

Cookie lesen

Über JS können Sie Cookies wie folgt lesen:

var x = document.cookie;
Nach dem Login kopieren

document.cookie 会在一条字符串中返回所有 cookie,比如:cookie1=value; cookie2

事例:

<html>
   <head>   
      <script type = "text/JavaScript">
         <!--
            function ReadCookie() {
               var allcookies = document.cookie;
               document.write ("All Cookies : " + allcookies );
                
               // Get all the cookies pairs in an array
               cookiearray = allcookies.split(&#39;;&#39;);
                
               // Now take key value pair out of this array
               for(var i=0; i<cookiearray.length; i++) {
                  name = cookiearray[i].split(&#39;=&#39;)[0];
                  value = cookiearray[i].split(&#39;=&#39;)[1];
                  document.write ("Key is : " + name + " and Value is : " + value);
               }
            }
         //-->
      </script>      
   </head>
    
   <body>     
      <form name = "myform" action = "">
         <p> click the Button to View Result:</p>
         <input type = "button" value = "Get Cookie" onclick = "ReadCookie()"/>
      </form>      
   </body>
</html>
Nach dem Login kopieren

改变 cookie

通过使用 JS,咱们可以像创建 cookie 一样改变它:

document.cookie = "username=Steve Jobs; expires=Sun, 31 Dec 2017 12:00:00 UTC; path=/";
Nach dem Login kopieren

这样旧 cookie 会被覆盖。

事例:

<html>
   <head>   
      <script type = "text/JavaScript">
         <!--
            function WriteCookie() {
               var now = new Date();
               now.setMonth( now.getMonth() + 1 );
               cookievalue = escape(document.myform.customer.value) + ";"
                
               document.cookie = "name=" + cookievalue;
               document.cookie = "expires=" + now.toUTCString() + ";"
               document.write ("Setting Cookies : " + "name=" + cookievalue );
            }
         //-->
      </script>      
   </head>
    
   <body>
      <form name = "myform" action = "">
         Enter name: <input type = "text" name = "customer"/>
         <input type = "button" value = "Set Cookie" onclick = "WriteCookie()"/>
      </form>      
   </body>
</html>
Nach dem Login kopieren

删除 cookie

删除 cookie 非常简单,不必指定 cookie 值:直接把 expires 参数设置为过去的日期即可:

document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;";
Nach dem Login kopieren

应该定义 cookie 路径以确保删除正确的 cookie。如果不指定路径,有些浏览器不会让咱们删除 cookie。

事例:

<html>
   <head>   
      <script type = "text/javascript">
         <!--
            function WriteCookie() {
               var now = new Date();
               now.setMonth( now.getMonth() - 1 );
               cookievalue = escape(document.myform.customer.value) + ";"
                
               document.cookie = "name=" + cookievalue;
               document.cookie = "expires=" + now.toUTCString() + ";"
               document.write("Setting Cookies : " + "name=" + cookievalue );
            }
          //-->
      </script>      
   </head>
    
   <body>
      <form name = "myform" action = "">
         Enter name: <input type = "text" name = "customer"/>
         <input type = "button" value = "Set Cookie" onclick = "WriteCookie()"/>
      </form>      
   </body>
</html>
Nach dem Login kopieren

【相关推荐:javascript视频教程web前端

Das obige ist der detaillierte Inhalt vonOrganisieren Sie die Anwendung von Cookie-Operationsobjekten in JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:cnblogs.com
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage