angularJS读取响应cookie参数为空

时间:2013-09-02 08:35:32

标签: angularjs cookies

如果我使用$ http在我的服务器上发出请求,我会得到以下回复:

Request URL:http://www.test.tst/login
Request Method:GET
Status Code:200 OK
Request Headersview source
Accept:application/json, text/plain, */*
Accept-Encoding:gzip,deflate,sdch
Accept-Language:de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4
Connection:keep-alive
Cookie:JSESSIONID=349AD3AC797C6AB28121ADA1766FF4A2
Host:www.test.tst
我是这样实现的:

$scope.checkToken = function () {
            $http({method: 'GET', url: 'http://www.test.tst/login', params: {'action.code': 'LINK', 'linkparameter': $rootScope.token}}).
                success(function (data, status, headers, config) {
                    console.log($cookieStore.get('JSESSIONID'));
                }).
                error(function (data, status, headers, config) {
                    $location.path("/login");
                });
        }

任何人都可以告诉我,为什么$ cookieStore.get(' JSESSIONID')总是未定义?

Cookie域与我的请求来源的域名相同。

1 个答案:

答案 0 :(得分:1)

您应该使用$cookie service,而不是$ cookieStore $ cookie提供对浏览器cookie的访问;而$ cookieStore允许您存储和检索值。

这意味着要访问服务器设置的cookie,您将使用$ cookie。$ cookieStore.get()将允许您使用$ cookieStore.set()访问存储在应用程序中的值 只需在代码中用$ cookie替换$ cookieStore。