如何在JavaScript中设置cookie值并在Rails控制器中获取它 [英] How to set cookie value in JavaScript and get it in Rails controller
问题描述
使用Ruby on Rails 5.0.3。
Using Ruby on Rails 5.0.3 .
我想在JavaScript中使用JavaScript设置一些值(当点击按钮时),并在Rails中获取它。
I want to set some value in cookie using JavaScript (when button clicked), and get it in Rails.
我知道如何在Rails中访问会话,这是 session [:some_key]
或 cookies
。
I know how to access session in Rails, which is session[:some_key]
or cookies
.
但我不知道如何在JavaScript中做。 (它必须能够从Rails session
或 cookies
进行访问。)
But I don't know how to do in JavaScript. (it must be able to accessed from Rails session
or cookies
.)
如何在JS中完成?
或者在JS中保存一些值,以及稍后在Rails中获取它的任何其他方法?
推荐答案
不幸的是,您无法从客户端修改Rails会话,即使它存储在cookie中也是如此。因为rails会话是加密的。作为解决方案,您可以使用常规cookie,而不是Rails会话。
Unfortunately, you can't modify Rails session from the client side, even if it stored in cookies. Because the rails session is encrypted. As a solution, you can use regular cookies, not the Rails session.
检查 http://api.rubyonrails.org/v5.1/classes/ActionDispatch/Cookies.html https://www.w3schools.com/js/js_cookies.asp
了解更多信息。
Check http://api.rubyonrails.org/v5.1/classes/ActionDispatch/Cookies.html https://www.w3schools.com/js/js_cookies.asp for more information.
这篇关于如何在JavaScript中设置cookie值并在Rails控制器中获取它的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!