当我在我的 java servlet 中检索 cookie 时,getPath() 的所有值都为空。
因此,如果在目录/foo 和根目录中设置了同名的 cookie,我会检索到两个具有完全相同名称的 cookie,但我无法区分它们,因为 getPath() 对两者都返回 null。
我查看了 firebug,发现 firefox 没有为该路径发送任何内容。
我的应用程序使用路径设置为“/”的“rememberme”cookie。只要只有一个名为 rememberme 的 cookie,一切都可以正常工作。但是,如果以某种方式在不同的路径(如/foo)上设置了另一个同名的 cookie,那么我的应用程序将不知道我为根设置的是哪个。
如何区分 cookie?我是否需要担心子目录中存在同名的 cookie,或者我是否可以假设只有我设置的那个?
最佳答案
如果浏览器不发送路径,您应该在 Cookie 处理程序中将路径设置为“/”。
设置 cookie 的是您的服务器,而不是网络浏览器,因此如果您将创建的 cookie 的所有路径都设置为同一域的“/”,则无需担心。
关于java - 在 Java 中检索正确 cookie 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2634471/