是否可以将用户的 Cookie 或 Session 存储在 Controller 中并通过从 JS 或 Jquery 访问它来获取 cookie?
问问题
12410 次
1 回答
14
会话值在服务器上可用。
您可以在控制器中像这样设置它们:
session[:user_name] = @user.name
如果您想稍后在 javascript 中访问该值,您可能希望在视图中执行以下操作:
<%= javascript_tag do %>
var userName = '<%= session[:user_name %>';
<% end %>
Cookie由浏览器管理,因此访问方式不同。
在您的控制器中设置一个:
cookies[:user_name] = @user.name
(您还可以使用 options为 cookie 指定路径、过期等。)
然后可以使用 jQuery 访问它:
var userName = jQuery.cookie("user_name");
注意:您也可以通过解析使用纯 javascript(不是 jQuery)访问 cookiedocument.cookie
,但让 jQuery 为您做这件事要容易得多(如果您已经在使用该库)。
于 2013-03-12T03:39:32.783 回答