How to set a cookie and expire it in 30 days
<p>Here is some basic usage for the js cookie library.</p>
<p>Include the following script. Or you can grab the latest version at the cdnjs website.</p>
<h4>HTML</h4>
<pre><code class="html hljs xml"><script src="https://cdnjs.cloudflare.com/ajax/libs/js-cookie/2.2.1/js.cookie.min.js"></script></code></pre>
<h3>How to set a cookie</h3>
<p>this sets a cookie named kruxor with the value awesome. </p>
<h4>Javascript</h4>
<pre><code class="javascript hljs">// set a cookie
Cookies.set('kruxor', 'awesome');</code></pre>
<h3>How to set a cookie with expiry</h3>
<p>this sets a cookie named kruxor and the value awesome with the expiry of 30 days. </p>
<h3>Checking a cookie</h3>
<p>use this code to check a cookie is set</p>
<h4>Javascript</h4>
<pre><code class="javascript hljs">Cookies.get('kruxor')</code></pre>
<h3>How to check if a cookie is set i chrome</h3>
<p>open dev tools, f12, go into the application tab, and then scroll down until you see cookies. </p>
<p><img src="https://i.imgur.com/n87oUNe.png" /></p>
<h4>Javascript</h4>
<pre><code class="javascript hljs">Cookies.set('kruxor', 'awesome', { expires: 30 })</code></pre>
<h3>Further Documentation on JS Cookie</h3>
<p><a class="btn btn-primary" href="https://github.com/js-cookie/js-cookie?utmsource=cdnjs&utmmedium=cdnjslink&utmcampaign=cdnjslibrary " target="blank" rel="noopener">View on Github</a></p>
<h3>Get the latest CDNJS version of this code here:</h3>
<p><a class="btn btn-primary" href="https://cdnjs.com/libraries/js-cookie ">View JS Cookie on CDNJS</a></p>
<p> </p>
<h2>Basic Usage</h2>
<p>Create a cookie, valid across the entire site:</p>
<div class="highlight highlight-source-js position-relative overflow-auto">
<pre><span class="pl-v">Cookies</span><span class="pl-kos">.</span><span class="pl-en">set</span><span class="pl-kos">(</span><span class="pl-s">'name'</span><span class="pl-kos">,</span> <span class="pl-s">'value'</span><span class="pl-kos">)</span></pre>
</div>
<p>Create a cookie that expires 7 days from now, valid across the entire site:</p>
<div class="highlight highlight-source-js position-relative overflow-auto">
<pre><span class="pl-v">Cookies</span><span class="pl-kos">.</span><span class="pl-en">set</span><span class="pl-kos">(</span><span class="pl-s">'name'</span><span class="pl-kos">,</span> <span class="pl-s">'value'</span><span class="pl-kos">,</span> <span class="pl-kos">{</span> <span class="pl-c1">expires</span>: <span class="pl-c1">7</span> <span class="pl-kos">}</span><span class="pl-kos">)</span></pre>
</div>
<p>Create an expiring cookie, valid to the path of the current page:</p>
<div class="highlight highlight-source-js position-relative overflow-auto">
<pre><span class="pl-v">Cookies</span><span class="pl-kos">.</span><span class="pl-en">set</span><span class="pl-kos">(</span><span class="pl-s">'name'</span><span class="pl-kos">,</span> <span class="pl-s">'value'</span><span class="pl-kos">,</span> <span class="pl-kos">{</span> <span class="pl-c1">expires</span>: <span class="pl-c1">7</span><span class="pl-kos">,</span> <span class="pl-c1">path</span>: <span class="pl-s">''</span> <span class="pl-kos">}</span><span class="pl-kos">)</span></pre>
</div>
<p>Read cookie:</p>
<div class="highlight highlight-source-js position-relative overflow-auto">
<pre><span class="pl-v">Cookies</span><span class="pl-kos">.</span><span class="pl-en"><span class="pl-token" data-hydro-click="{"eventtype":"codenavigation.clickonsymbol","payload":{"action":"clickonsymbol","repositoryid":32531480,"ref":"master","language":"Markdown","originatingurl":"https://github.com/js-cookie/js-cookie?utmsource=cdnjs&utmmedium=cdnjslink&utmcampaign=cdnjslibrary%C2%A0","userid":1638751}}" data-hydro-click-hmac="9868dc152d8896b56c25b7219d1b804bf57078fcaafa77350a9c260a7e05656f">get</span></span><span class="pl-kos">(</span><span class="pl-s">'name'</span><span class="pl-kos">)</span> <span class="pl-c">// => 'value'</span>
<span class="pl-v">Cookies</span><span class="pl-kos">.</span><span class="pl-en">get</span><span class="pl-kos">(</span><span class="pl-s">'nothing'</span><span class="pl-kos">)</span> <span class="pl-c">// => undefined</span></pre>
</div>
<p>Read all visible cookies:</p>
<div class="highlight highlight-source-js position-relative overflow-auto">
<pre><span class="pl-v">Cookies</span><span class="pl-kos">.</span><span class="pl-en">get</span><span class="pl-kos">(</span><span class="pl-kos">)</span> <span class="pl-c">// => { name: 'value' }</span></pre>
</div>
<p><em>Note: It is not possible to read a particular cookie by passing one of the cookie attributes (which may or may not have been used when writing the cookie in question):</em></p>
<div class="highlight highlight-source-js position-relative overflow-auto">
<pre><span class="pl-v">Cookies</span><span class="pl-kos">.</span><span class="pl-en">get</span><span class="pl-kos">(</span><span class="pl-s">'foo'</span><span class="pl-kos">,</span> <span class="pl-kos">{</span> <span class="pl-c1">domain</span>: <span class="pl-s">'sub.example.com'</span> <span class="pl-kos">}</span><span class="pl-kos">)</span> <span class="pl-c">// domain won't have any effect...!</span></pre>
</div>
<p>The cookie with the name <code>foo</code> will only be available on <code>.get()</code> if it's visible from where the code is called; the domain and/or path attribute will not have an effect when reading.</p>
<p>Delete cookie:</p>
<div class="highlight highlight-source-js position-relative overflow-auto">
<pre><span class="pl-v">Cookies</span><span class="pl-kos">.</span><span class="pl-en">remove</span><span class="pl-kos">(</span><span class="pl-s">'name'</span><span class="pl-kos">)</span></pre>
</div>
<p>Delete a cookie valid to the path of the current page:</p>
<div class="highlight highlight-source-js position-relative overflow-auto">
<pre><span class="pl-v">Cookies</span><span class="pl-kos">.</span><span class="pl-en">set</span><span class="pl-kos">(</span><span class="pl-s">'name'</span><span class="pl-kos">,</span> <span class="pl-s">'value'</span><span class="pl-kos">,</span> <span class="pl-kos">{</span> <span class="pl-c1">path</span>: <span class="pl-s">''</span> <span class="pl-kos">}</span><span class="pl-kos">)</span>
<span class="pl-v">Cookies</span><span class="pl-kos">.</span><span class="pl-en">remove</span><span class="pl-kos">(</span><span class="pl-s">'name'</span><span class="pl-kos">)</span> <span class="pl-c">// fail!</span>
<span class="pl-v">Cookies</span><span class="pl-kos">.</span><span class="pl-en">remove</span><span class="pl-kos">(</span><span class="pl-s">'name'</span><span class="pl-kos">,</span> <span class="pl-kos">{</span> <span class="pl-c1">path</span>: <span class="pl-s">''</span> <span class="pl-kos">}</span><span class="pl-kos">)</span> <span class="pl-c">// removed!</span></pre>
</div>
<p><em>IMPORTANT! When deleting a cookie and you're not relying on the <a href="https://github.com/js-cookie/js-cookie?utmsource=cdnjs&utmmedium=cdnjslink&utmcampaign=cdnjs_library%C2%A0#cookie-attributes">default attributes</a>, you must pass the exact same path and domain attributes that were used to set the cookie:</em></p>
<div class="highlight highlight-source-js position-relative overflow-auto">
<pre><span class="pl-v">Cookies</span><span class="pl-kos">.</span><span class="pl-en">remove</span><span class="pl-kos">(</span><span class="pl-s">'name'</span><span class="pl-kos">,</span> <span class="pl-kos">{</span> <span class="pl-c1">path</span>: <span class="pl-s">''</span><span class="pl-kos">,</span> <span class="pl-c1">domain</span>: <span class="pl-s">'.yourdomain.com'</span> <span class="pl-kos">}</span><span class="pl-kos">)</span></pre>
</div>
<p><em>Note: Removing a nonexistent cookie neither raises any exception nor returns any value.</em></p>
Scripts
<script src="https://cdnjs.cloudflare.com/ajax/libs/js-cookie/2.2.1/js.cookie.min.js"></script>Javascript
// set a cookie
Cookies.set('kruxor', 'awesome');