An Interest In:
Web News this Week
- March 28, 2024
- March 27, 2024
- March 26, 2024
- March 25, 2024
- March 24, 2024
- March 23, 2024
- March 22, 2024
November 21, 2021 08:06 pm GMT
Original Link: https://dev.to/awwsmm/playing-around-with-browser-cookies-in-scalajs-3p43
Playing around with browser cookies in Scala.js
Photo by Laura James from Pexels
I spent this weekend playing around with Scala.js and learning how to manipulate browser cookies with it.
Check out the live demo at cookies.awwsmm.com.
The source is available at github.com/awwsmm/CookiesScalaJS.
There are a few cool Scala flairs here, particularly this bit which pattern matches on a regular expression
def clearAllCookies(): Unit = { val Cookie = "([^=]+)=.+".r document.cookie.split("; ").foreach { case Cookie(key) => clearCookie(key) case other => err.println(s"Couldn't parse '$other' as a key=value cookie pair") } }
In order to ensure that users don't include the ;
or =
characters in their cookie keys and values (which confuses the parser), I've also added these two little safeguards, as well
// prevent the user from typing ';' or '=' into the input input.addEventListener("keypress", (e: dom.KeyboardEvent) => { if (e.key == ";" || e.key == "=") { e.preventDefault() } }) // prevent the user from pasting ';' or '=' into the input input.addEventListener("paste", (e: dom.ClipboardEvent) => { val text = e.clipboardData.getData("text") if (text.contains(";") || text.contains("=")) { e.preventDefault() } })
What do you think? Anyone else on DEV doing anything cool with Scala.js?
Original Link: https://dev.to/awwsmm/playing-around-with-browser-cookies-in-scalajs-3p43
Share this article:
Tweet
View Full Article
Dev To
An online community for sharing and discovering great ideas, having debates, and making friendsMore About this Source Visit Dev To