ユーザーの Cookie またはセッションをコントローラーに保存し、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");
注: を解析することにより、(jQuery ではなく)純粋な JavaScript を使用して Cookie にアクセスすることもできますが、jQuery にアクセスさせる方document.cookie
がはるかに簡単です (既にそのライブラリを使用している場合)。
于 2013-03-12T03:39:32.783 に答える