Um in einem Plugin für OctoberCMS ein Cookie zu erstellen, reicht es meistens aus die Funktion Cookie::queue
aufzurufen (https://laravel.com/docs/master/responses#attaching-cookies-to-responses). Ein Aufruf wie
Cookie::queue('mynewcookie', 'mynewcookiesvalue', 60);
Code-Sprache: PHP (php)
würde ein Cookie mit dem Namen mynewcookie
mit dem Wert mynewcookiesvalue
erstellen. Dieses Cookie hätte eine Cookie-Dauer von 60 Minuten.
Doch will man das Cookie in JavaScript im Frontend benutzen, braucht man noch weitere Parameter. Laut Definition werden die folgenden Parameter angeboten:
Cookie::queue('name', 'value', $minutes, $path, $domain, $secure, $httpOnly);
Code-Sprache: PHP (php)
Standardmäßig werden Cookies in Laravel / OctoberCMS mit $httpOnly = true
gesetzt. Doch um in JavaScript das Cookie auslesen zu können, muss httpOnly
auf false
gesetzt sein. D.h. ein Aufruf könnte dann folgendermaßen aussehen:
Cookie::queue(
'mynewcookie',
'mynewcookiesvalue',
60,
'/',
null,
false,
false);
Code-Sprache: PHP (php)
Bevor man das OctoberCMS Plugin dann veröffentlicht, sollte man vorher sicherstellen, dass die Cookies die richtigen Einstellungen in Bezug auf die Sicherheit haben.