【发布时间】:2016-09-16 13:20:31
【问题描述】:
我正在将我的 Angular 代码从使用 $http 重构为 ngResource。
我曾经在我的服务中有这样的代码:
svc.login = function(username, password) {
return $http.post(apiEndpoint + 'authenticate', {
username: username,
password: password
})
.then(function(val) {
console.log("user token:", val.data);
svc.token = val.data;
});
};
打印的用户令牌将是一个 jwt 令牌。现在我尝试将代码重构为这样的:
svc.login = function(username, password) {
svc.authenticateApi().post(apiEndpoint + 'authenticate', {
username: username,
password: password
},
function(val) {
console.log("user token:", val);
svc.token = val;
},
function(res) {
console.log("error:", res.status + " " + res.statusText);
});
};
但是,它不起作用,因为传递给第一个回调的参数val 不再是令牌本身,而是一个包含如下字符串数组的对象:
处理从 post 方法返回的数据的标准方法是什么? (在这种情况下,帖子的定义与此资源上的save 相同)
【问题讨论】:
标签: javascript angularjs ngresource