我正在使用ng-resource来执行ajax请求。我想发送除数据外的额外信息。
例如,我有一篇文章实体我的服务器上
exports.fetchArticle = function(req, res, next) {
var article = req.article
return res.json({data: article, message: 'success fetch article'})
}
我把它包起来的原因是,在缺失的情况下,这是没有意义的发送数据,我可以return res.json({data: null, message: 'deleted successfully'})
,我有:
$scope.fetchArticle = function() {
Article.get({articleId: $routeParams.articleId}, function(response) {
$scope.article = response.data
$scope.ajaxSuccess = response.message
}, function(err) {
$scope.ajaxError = err.data.message
})
}
$ scope.article不NG-资源的实例了,所以我不能做$ scope.article进一步要求,即这将导致错误,因为$ scope.article是一个普通的JSON对象:
$scope.article.$update(function(response) {...})
如果我从服务器只是return res.json(article)
,它的工作原理,但我不能沿着发送消息。
我不生成客户端的消息,但从服务器获取的原因是,错误消息来自服务器,我想保持成功消息与错误消息一致。
有没有其他优雅的方式发送消息?
在客户端上,您是否需要将消息与响应数据一起存储,或者您是否始终对消息做同样的事情? (如记录日志) – LionC
我向用户显示消息,如'更新成功'。我可以从客户端创建它,但由于错误消息来自服务器,我更愿意从服务器获取成功消息 – OMGPOP