angularjs - $cookieStore.get() 在 angularjs 中返回未定义

标签 angularjs servicestack

我正在通过响应从服务器写入一个 cookie,这很好,问题是当我尝试使用 angularJs $cookieStore.get() 读取相同的 cookie 时,总是返回“未定义”,我已经使用 chrome 和开发人员工具进行了调试 cookies 在那里,

console.log($cookieStore.get("r"));
$cookieStore 似乎已注入(inject)并运行正常,我只是想知道为什么 angularJs 无法读取 cookie。
r: undefined
enter image description here
编辑:
我尝试使用 $cookies 服务,但我也没有定义。
我在服务器端发送cookie没有任何问题,我在chrome开发人员工具中获取cookie
我正在使用服务堆栈,代码如下:
public override object Logout(IServiceBase service, ServiceStack.ServiceInterface.Auth.Auth request)
        {
            var resp = service.RequestContext.Get<IHttpResponse>();
            resp.Cookies.AddCookie(new Cookie { Name = "r", Path = "/", Value = "from server", HttpOnly = false, Discard = false, Expires = DateTime.Now.AddHours(12) });
            return base.Logout(service, request);
        }

最佳答案

我认为 $cookieStore 只打算单独使用,'r'是否设置在其他地方?文档说它提供了一个由 cookie 支持的键/值存储,而不是直接访问 cookie。当我将“myValue”设置为“jason”时,它会存储 %22jason%22 (fiddle) .这意味着您可以根据需要为 javascript 对象设置值,并且 cookieStore 将为您序列化和反序列化它们。

enter image description here

尝试使用 $cookies 取而代之的是,您可以只设置属性并且值未编码(fiddle) :

enter image description here

    $scope.setValue = function() {
        $cookieStore.put("myValue", $scope.value);
    };

    $scope.getValue = function() {
        $scope.value = $cookieStore.get('myValue');
    };

    $scope.setCookieValue = function() {
        $cookies.otherValue = $scope.value;
    };

    $scope.getCookieValue = function() {
        $scope.value = $cookies.otherValue;
    };

关于angularjs - $cookieStore.get() 在 angularjs 中返回未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19395445/

相关文章:

angularjs - 使用 AngularJS 在 Bootstrap 选项卡中重新加载数据

javascript - WishList bool 切换按钮切换 ng-repeat 中的所有项目而不是单个项目

servicestack - 使用 IServerEvents.NotifyChannel 丢失事件

compiler-errors - ServiceStack : Error calling service

html - AngularJS 将 id 传递给 ng-bind-html

javascript - 如何使用表单更新现有的 JS 对象 - Angular JS

javascript - 使用 Boomerang 库与 Resource Timing API 的优势

asp.net-mvc - 使用ServiceStack和SimpleInjector一起抵抗API服务

c# - ServiceStack 单元测试 - serviceStack 响应对象未初始化

api - 在 ServiceStack 中我可以选择哪些选项来为每个请求分配唯一的 ID?