Yii2-Cookies werden haupts?chlich über yiiwebRequest und yiiwebResponse betrieben
über Yii::$app-> >getCookies()->add() Cookie hinzufügen
Cookie über Yii::$app->request->cookies lesen (Empfohlenes Lernen: yii-Tutorial)
In js erstellte Cookies werden standardm??ig mit der Methode Yii::$app->request->cookies->get('abc') in yii2 abgerufen und k?nnen abgerufen werden Wenn Sie $_COOKIE['abc'] verwenden, hat dies folgende Gründe.
Wenn man sich Zeile 1218 in E:myYiiDemovendoryiisoftyii2webRequest.php ansieht, ist es nicht schwer zu erkennen, dass Wenn die Methode in yii2 verwendet wird, um das Cookie zu erhalten, die Zeichenfolge im cookieValidationKey gelesen wird entschlüsseln (das Cookie wird gespeichert und manchmal auch zur Verschlüsselung verwendet).
Da js das Cookie nicht verschlüsselt, kann es hier nicht entschlüsselt werden und das Cookie kann natürlich nicht abgerufen werden.
Die L?sung besteht darin, ?enableCookieValidation“ auf ?false“ zu setzen. Die spezifischen Vorg?nge sind wie folgt:
Yii::$app->request->enableCookieValidation = false; Yii::$app->request->cookies->get('abc');
Warme Erinnerung:
Denken Sie daran, es nach der Verwendung wiederherzustellen (Yii::$app->request->enableCookieValidation = true;), da es sonst Auswirkungen auf die folgende Logik haben kann.
Das obige ist der detaillierte Inhalt vonGründe, warum das yii2-Cookie nicht abgerufen werden kann. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

TocreateabasicrouteinYii,firstsetupacontrollerbyplacingitinthecontrollersdirectorywithpropernamingandclassdefinitionextendingyii\web\Controller.1)Createanactionwithinthecontrollerbydefiningapublicmethodstartingwith"action".2)ConfigureURLstr

Ayiideveloper'Skeyresponsibilities includedesigningandImplementingFeatures, Sicherstellung von Anwendungen und optimierender Bildung

Die Methode zum Erstellen von benutzerdefinierten Operationen in YII besteht darin, eine gemeinsame Methode zu definieren, die mit einer Aktion im Controller beginnt, die optional Parameter akzeptieren. Verarbeiten Sie dann Daten, machen Sie Ansichten oder geben Sie JSON nach Bedarf zurück. und gew?hrleisten schlie?lich die Sicherheit durch Zugangskontrolle. Die spezifischen Schritte umfassen: 1. Erstellen einer mit Aktion vorangestellten Methode; 2. Setzen Sie die Methode auf die ?ffentlichkeit; 3. kann URL -Parameter empfangen; 4. Prozessdaten wie Abfrage des Modells, Verarbeitung von Postanforderungen, Umleitungen usw.; 5. AccessControl verwenden oder die Berechtigungen manuell überprüfen, um den Zugriff einzuschr?nken. Beispielsweise kann ActionProfile ($ ID) über /Site /Profil? ID = 123 zugegriffen werden und rendern die Benutzerprofilseite. Die beste Praxis ist

Ayiidevelopercraftswebapplicationssusingtheyiiframework, Anforderungskillsinphp, yii-Specificknowledge und Webdevelopmentlifecyclemanagement.Keyres-ArsibilitiesInclude: 1) WritingEffictionCodetItimizeperance, 2) Vorbereitungsgr??e, Voraussetzungen, Voraussetzungen für Schreibungen, Voraussetzungen für Schreibungen, Voraussetzungen für Schreibungen, Voraussetzungen, die Bekanntmachung von Trübchen, die Bekanntmachung von Trübungen, und Sectaprotectapretectapretectaptectaptaprezieren, und

Touactiverecordininyiieffektiv, youcreateamodelClassforeachTableAnDinteracthEdatabaseSoBect-orientedMethods.First, DefineAmodelClassextendingyii \ db \ activerecordandSpecifytheCorresprespespectaNtableNameViatablename ()

Das Aufzeichnen von Sicherheitsereignissen in YII kann durch Konfigurieren von Protokollzielen, Ausl?sen von Schlüsselereignisprotokollen, Berücksichtigung des Datenbankspeichers und zur Vermeidung der Aufzeichnung sensibler Informationen erreicht werden. Die spezifischen Schritte sind wie folgt: 1. Legen Sie ein dediziertes Protokollziel in der Konfigurationsdatei fest, z. B. Filetarget oder DBTarget, und geben Sie die Klassifizierung als ?Sicherheit“ an. 2. Verwenden Sie yii :: info () oder yii :: warning (), um das Protokoll aufzuzeichnen, wenn ein kritisches Sicherheitsereignis (z. B. Anmeldefehler und Kennwortreset) auftritt. 3. Speichern Sie die Protokolle optional in der Datenbank für Abfrage und Analyse, und Sie müssen zuerst eine Tabelle erstellen und die Protokollparameter konfigurieren. 4. Vermeiden Sie es, sensible Daten wie Kennw?rter oder Token bei der Aufzeichnung von Kontextinformationen einzubeziehen, und Sie k?nnen den Parameterersatz verwenden, um IP und Benutzername hinzuzufügen. 5

Die Verwendung von YIIs Assetbundles ist eine bew?hrte Verantwortung für die Verwaltung von CSS- und JS -Dateien. Es definiert Ressourcengruppen zentral über PHP -Klassen und behandelt automatisch Abh?ngigkeiten, Verschmelzungen und Caches. 1. Das Ressourcenpaket ist eine PHP -Klasse, mit der CSS, JS und andere Ressourcen organisiert und ihre Abh?ngigkeiten deklariert werden. 2. Registrieren Sie Ressourcenpakete in der Ansicht oder Layout, um automatisch HTML -Tags zu generieren. 3.. Verschiedene Ressourcenpakete k?nnen je nach Benutzerrolle oder Seitentyp bedingt registriert werden. 4. Die Ressourcendateien werden standardm??ig in Web/CSS und Web/JS platziert, und der Pfad kann angepasst werden. 5. Verwenden Sie die AssetManager -Konfiguration, um Zeitstempel hinzuzufügen, um die Versionskontrolle zu erreichen und Browser -Caching -Probleme zu l?sen. Die korrekte Verwendung von Ressourcenpaketen kann die Klarheit der Projektstruktur und die Belastungseffizienz verbessern

TomanageClientscriptsikinyiieFECTEctivity, UseregisterJSforinlinejavaScript, RegisterJSFileAnDregisterCSSFileForexTernalfiles, AndassetbundlesFororganizedReuse.Firste, $ this-> RegisterJS () toadddddddsmalljavascriptsnippetsatheBottomoftomoftomoftomofTomofToNepageorSeorsorsorsorsorsors.
