Heim > Java > javaLernprogramm > Hauptteil

So lösen Sie das Problem, dass Servlet Cookie den Wert in Java nicht abrufen kann

怪我咯
Freigeben: 2017-06-30 10:39:18
Original
2039 Leute haben es durchsucht

In diesem Artikel werden hauptsächlich relevante Informationen zu den Gründen vorgestellt, warum Servlet Cookie den Wert in Java nicht erreichen kann

Lösung für den Grund, warum Servlet Cookie den Wert in Java nicht abrufen kann

Phänomene:

Beim Testen der HTTP-Anfrage mit Cookie wurde es gefunden dass der Server request.geter("cookie") den Wert abrufen kann, request.getCookies() jedoch nicht (Except)

 Cookie mycookies[] = request.getCookies();
Nach dem Login kopieren
Grund:

Ich habe den spezifischen Cookie-Wert des Browsers überprüft und festgestellt, dass

http://localhost: 8080/

Beim Zugriff das Cookie Der Wert wird unter „localhost“ platziert und die vom Server automatisch generierte SESSIONID wird ebenfalls unter dem Localhost-Pfad gespeichert. http://127.0.0.1:8080/
Beim Zugriff wird der Cookie-UID-Wert unter 127.0.0.1:8080 und das Cookie unter 127.0.0.1:8080 platziert Das Servlet auf der Serverseite kann es nie abrufen und die vom Server automatisch generierte SESSIONID liegt unter 127.0.0.1, was sich vom UID-Speicherort unterscheidet.

Wenn der Server also Cookies ausgibt, muss

in

String host=request.getHeader("host");
Nach dem Login kopieren
geändert werden oder die Einstellung

if(host.indexOf(":")>-1){
  host=host.split(":")[0];
  }
Nach dem Login kopieren
aufgegeben werden Dies Der Cookie-Wert wird ebenfalls unter 127.0.0.1 gespeichert und hat nichts mit der Portnummer zu tun

mycookie.setDomain(host);
Nach dem Login kopieren
Wenn der Server bereits einen Domänennamen hat, gibt es natürlich keinen Cookie-Wert, der nicht abgerufen werden kann unter der Portnummer


Lösung:

Fügen Sie die vorherige Zeile hinzu, um sie zu erhalten,

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem, dass Servlet Cookie den Wert in Java nicht abrufen kann. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage