首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Cookie在Opera中来回发送不正确

Cookie在Opera中来回发送不正确
EN

Stack Overflow用户
提问于 2012-08-09 01:25:14
回答 2查看 2.6K关注 0票数 19

首先,我不确定这是否是Opera 12.01中的问题,但这个问题只在Opera中出现。我已经在安卓和iPhone的FF14、Chrome21、Safari5 (Windows)、Safari Mac和Webkit浏览器上进行了测试。

我的应用程序在trigger.io forge平台上运行,并使用代理将请求从web应用程序路由到服务。代理只是简单地转发请求和cookie,这在大多数浏览器中都能正常工作。

在检查了dragonfly中的请求后,我注意到服务器在响应中发送了正确的报头,但Opera似乎忽略了这些值的设置。我想知道这是不是由于cookie的某些错误配置的路径值造成的。我在Firefox和Opera中附上了2个请求的截图。

正如您在屏幕上看到的,FF可以看到cookie标头并对其进行适当的设置,但Opera并非如此。

Firefox Request

Opera request 1 Screen

Opera Request 2 Screen

我还没有包含来自代理的代码来进行请求转发,所以如果需要的话,请让我知道,以便获得一些见解。在服务端,我运行PHP和Codeigniter。如果我需要在我的环境中添加更多信息,请让我知道,谢谢。

更新:即使在不使用自定义TLD的生产环境中,也会出现此问题。其他使用cookies的站点工作正常,并且cookies已启用。

EN

回答 2

Stack Overflow用户

发布于 2012-08-16 01:59:30

您是否检查过这是否是cookie域的问题?我假设你正在使用Javascript来设置/读取cookie?在任何情况下,有4个cookie域问题你可能想要检查(我知道我在旧的FF版本中遇到了这些问题):

1-检查非法cookie字符:allowed cookie characters您可能不允许在cookie名称中使用'-‘或'=’,并且您根本不应该在cookie中使用非ASCII码字符。base64编码可能会处理此问题。

2-检查您设置cookie的域(通过javascript代码或任何其他方式)与执行代码的域是否相同。

3-检查cookie域是否不是本地主机;查看是否可以测试从远程域设置cookie

4-如果您使用JS来设置cookie,请尝试测试是否可以在浏览器中使用CGI设置cookie,以确保这不是浏览器问题。如果它正常工作,看看你是否可以使用JS读取cookie (而不是设置它)。

请在评论中让我知道这是如何进行的,我已经处理了许多次类似的问题,根据您通过这些检查得到的结果,我非常确定我可以帮助您解决这个问题。

票数 5
EN

Stack Overflow用户

发布于 2012-08-13 00:34:13

看看这些Opera截图,它们似乎是在同一秒内处理的AJAX / XHR请求。有没有可能Javascript“同时”触发了这两个请求,因此来自“第一个”的响应在构造“第二个”的请求之前没有到达--因此cookie还没有被设置?

我不熟悉您正在使用的技术/工具包,所以不知道这些是常用代码还是您的自定义应用程序的一部分。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11869902

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档