且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Rails - 在控制器中存储一个cookie,并从Javascript,Jquery

更新时间:2023-01-13 16:12:42

会话值可在服务器上使用。



您可以在控制器中这样设置它们:

  session [:user_name] = @ user.name 

如果你想在javascript中访问该值,你可能需要在视图中这样做:

 <%= javascript_tag do%> 
var userName ='<%= session [:user_name%>';
<%end%>






Cookie

  在控制器中设置一个:$ c> cookies [:user_name] = @ user.name 

,过期等使用Cookie的选项。)



然后可以使用jQuery访问它:

  var userName = jQuery.cookie用户名); 

注意:您也可以通过解析 document.cookie 访问使用纯javascript (不是jQuery)但是更容易让jQuery为你做(如果你已经使用那个库)。


Is it possible to store a User's Cookie or Session in Controller and Get the cookie by accessing it from JS or Jquery?

Session values are available on the server.

You can set them like this in your controller:

session[:user_name] = @user.name

If you want to access that value later in javascript, you'll probably want to do something like this in a view:

<%= javascript_tag do %>
  var userName = '<%= session[:user_name %>';
<% end %>


Cookies are managed by the browser, so accessed differently.

To set one in your controller:

cookies[:user_name] = @user.name

(You can also specify the path, expiration, etc. for the cookie using options.)

It can then be accessed using jQuery:

var userName = jQuery.cookie("user_name");

Note: you can also access the cookie using pure javascript (not jQuery) by parsing document.cookie, but it is much easier to let jQuery do it for you (if you're already using that library).