我在safari上发现了一个奇怪的cookie问题.如果您浏览http://2much.ch,您可以使用FF/IE进入并在网站内冲浪.
但是如果你使用safari,你只能输入一次; 你不能在网站内冲浪.我发现Safari没有设置输入的cookie,但FF/IE确实如此.
这有什么不对?
我更新到Rails 2.3.10,Rack 1.2.1,现在我的flash消息都没有出现.我发现在重定向期间,通知会像这样传递
redirect_to(@user, :notice => "Sorry there was an error")
Run Code Online (Sandbox Code Playgroud)
在我看来,flash哈希是空的
<%= debug flash %>
!map:ActionController::Flash::FlashHash {}
Run Code Online (Sandbox Code Playgroud)
但是您可以在控制器中看到该消息. 是什么赋予了?
<%= debug controller.session %>
session{:home_zip=>"94108", :session_id=>"xxx", :flash=>{:notice=>"Sorry there was an error"}, :user_credentials=>"1baf9c9c0423ce0151ec32e24cc422f07309e4ba503eb4830635ecc115da217809997324374bb273b3fb792895c9741a8b8c9ea4267771a1bd149de5b9179ea0", :user_credentials_id=>22, :home_market_id=>11}
Edit Profile
Run Code Online (Sandbox Code Playgroud) 鉴于影响Safari和Chrome的cookie处理错误(请参阅此主题),以及将pylons实现redirect_to作为例外,是否可以可靠地设置跟踪cookie并同时重定向?META刷新方法是否受到鄙视?
我发现,如果访问是第一次访问,我用 PHP 编写的 Web 服务中的 301 重定向响应不携带自定义 http 标头和自定义 cookie 值。我不确定的是这是否是 301 重定向应该如何工作,或者这是否只是如何编写我的 PHP 代码的问题?
如果这不清楚,请澄清,我会让问题更清楚。我的问题是关于 http 协议在这种情况下应该如何表现。