什么时候angularjs cookieStore用新cookie更新?

时间:2013-11-27 15:18:20

标签: angularjs cookies

我目前正在我的应用中实现登录功能。我使用AngularJS和$cookieStore。当我发出ajax请求来验证用户时,我从服务器获得了一个cookie。我想在success()中使用此Cookie在我的Auth服务中设置用户。在我要求像这样的cookie之后,我使用chrome开发工具暂停:

var cookieUser = $cookieStore.get('user');

但结果是undefined unescape(document.cookie)上的Chrome观看表示已设置Cookie "user"

如果我运行请求两次:$cookieStore.get('user')将返回上一个cookie。

为什么$cookieStore没有更新我刚收到的Cookie?

2 个答案:

答案 0 :(得分:1)

AngularJS' uses an asynchronous $watch callback to write cookies.因此,您需要将Cookie读取包装在$timeout内,或者在不使用$cookieStore.get的情况下访问数据。

答案 1 :(得分:0)

我遇到了类似的问题。

在我的appplication中成功登录后,我当然要转换到一个州' main.index'在解决对象中,我无法使用$ cookies对象(角度)获取身份验证Cookie,但我能够在document.cookie中看到它。

我认为$ cookies会比 @swenedo 提到的$ .cookie更新一点。

使用jquery的$ .cookie为我工作。