Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/54.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 带有中文字符的Rails Cookie会导致错误的字符串_Ruby On Rails_Angularjs_Cookies_Encode - Fatal编程技术网

Ruby on rails 带有中文字符的Rails Cookie会导致错误的字符串

Ruby on rails 带有中文字符的Rails Cookie会导致错误的字符串,ruby-on-rails,angularjs,cookies,encode,Ruby On Rails,Angularjs,Cookies,Encode,我使用rails 4+和angular 1.2.14开发应用程序。当我尝试将中文用户名保存到cookie时。我通过angularjs$cookieStore阅读。我得到一个奇怪的字符串,它是不可读的,基本上,我认为这是饼干本身的问题,不能直接保存中国的chracter。但是我找不到一个合适的方法来解决它。即使我使用string.force_编码('UTF-8'),也没有发生任何事情。下面是关于这个问题的核心代码 这是我在ruby控制器文件中存储cookie数据的内容: cookies[:用户]

我使用rails 4+和angular 1.2.14开发应用程序。当我尝试将中文用户名保存到cookie时。我通过angularjs$cookieStore阅读。我得到一个奇怪的字符串,它是不可读的,基本上,我认为这是饼干本身的问题,不能直接保存中国的chracter。但是我找不到一个合适的方法来解决它。即使我使用string.force_编码('UTF-8'),也没有发生任何事情。下面是关于这个问题的核心代码

这是我在ruby控制器文件中存储cookie数据的内容:

cookies[:用户]=用户信息(用户)

用户信息方法定义如下:

def用户信息(用户)
{
id:user.id.to_,
用户名:user.username,
角色:user.role,
过期时间:从现在起1.5小时
}.to_json
结束
我以前在angular services中注入$cookieStore就得到了:

\u current\u user=$cookieStore.get('user')

当我看到这个当前用户时,字段id和角色等英文字符是正确的。但是我得到的用户名是一个奇怪的字符串
和\¾é­

这个问题是由cookie save汉字本身引起的,还是仅仅是由angular引起的

这件事困扰了我几个小时。感谢那些回答这个问题的人