捕获JWT时出错

时间:2015-12-30 06:38:52

标签: javascript angularjs jwt

我正在研究jwt angular + java jersey认证。我能够将jwt令牌从服务器发送回客户端,可以在chrome控制台中看到状态码为200的POST响应。

我的问题是我无法将其保存在变量中以便我可以执行解码。我收到这样的错误:

            <div id="navbar" class="navbar navbar-default navbar-fixed-top">
            <nav>
                <ul id="navlist">
                    <li class="navitem"><a class="link" ui-sref="home">Home</a></li>
                    <li class="navitem"><a class="link" ui-sref="about">About</a></li>
                    <li class="navitem"><a class="link" ui-sref="contact">Contact</a></li>
                </ul>
            </nav>
        </div>

这是我的代码:

TypeError: href is null
e/<()angular.min.js (line 107)
Ze/this.$get</<()angular.min.js (line 81)
f/<()angular.min.js (line 119)
lf/this.$get</r.prototype.$eval()angular.min.js (line 133)
lf/this.$get</r.prototype.$digest()angular.min.js (line 130)
lf/this.$get</r.prototype.$apply()angular.min.js (line 134)
g()angular.min.js (line 87)
T()angular.min.js (line 92)
Uf/</w.onload()angular.min.js (line 93)
stackFrame.js (line 357)
<System>
error is:undefined

1 个答案:

答案 0 :(得分:0)

你是用JSON发送令牌吗?还是纯文本?

我最近在HAM堆栈上使用了基于jwt的身份验证,并在对象中提供了令牌,因此响应类似于{token:&#39; asdasds.sdadad.asdad&#39;我通常以下面的形式调用Angular中的服务器:

$http({
    method: 'POST',
    url: 'rs/loginResource',
    data: {
        email: $scope.email,
        password: $scope.password
    }
})
.then(function (resp) {
    var token = resp.data.token
})
.catch(function(error){
    return error;
});