In JavaScript, it is pretty simple to work with Cookies. You get and set cookies via the document.cookie
code.
Here's example JavaScript code that I've written to get and set Cookies:
function getCookie(cookie_name) {
const name = cookie_name + "=";
const decodedCookie = decodeURIComponent(document.cookie);
const ca = decodedCookie.split(';');
for(let i = 0; i <ca.length; i++) {
let c = ca[i];
while (c.charAt(0) == ' ')
c = c.substring(1);
if (c.indexOf(name) == 0)
return c.substring(name.length, c.length);
}
return "";
}
function setCookie(cookie_name, value, minutes) {
let expires = "";
if (minutes) {
let date = new Date();
date.setTime(date.getTime()+(minutes*60*1000));
expires = "; expires="+date.toUTCString();
}
document.cookie = cookie_name + "=" + value + expires + ";SameSite=Strict; path=/";
}
How do I get and set cookies using Delphi in TMS Web Core?
You can get and set cookies using the TCookies
class from the WEBLib.Cookies
unit.
Here are two functions I wrote for getting and setting cookies in pure Delphi code:
uses WEBLib.Cookies, System.DateUtils;
...
procedure SetCookie(cookie_name, value: String; minutes: UInt64);
var
Cookies: TCookies;
begin
Cookies := TCookies.Create;
Try
Cookies.Add(cookie_name,value, IncMinute(Now,minutes));
Cookies.SetCookies;
Finally
Cookies.Free;
End;
end;
function GetCookie(cookie_name: String): String;
var
Cookies: TCookies;
Cookie: TCookie;
begin
Result := '';
Cookies := TCookies.Create;
Try
Cookies.GetCookies;
Cookie := Cookies.Find(cookie_name);
if Assigned(Cookie) then
Result := Cookie.Value;
Finally
Cookies.Free;
End;
end;