【发布时间】:2014-07-31 19:51:38
【问题描述】:
我在 Rails 后端使用带有 ngResource 工厂和 restful 控制器的 angular。当发出创建新记录的发布请求时,我的 API 会以 406 响应和 json 响应的结构进行响应:
{ success: false, errors ['error1', 'error2'], message: "record didn't save" }
问题是当我从 API 返回 406 响应并且 angular 无法处理响应时,我在控制台中看到发布请求错误。
类似:
POST http://localhost:3000/api/widget/384/comments 406 (Not Acceptable) includes.js?v=e777c6e0fdfb9a725e857c8ca3eab18f:545
sendReplacement includes.js?v=e777c6e0fdfb9a725e857c8ca3eab18f:545
(anonymous function) angular.js?body=1:8381
sendReq angular.js?body=1:8181
$http.serverRequest angular.js?body=1:7922
wrappedCallback angular.js?body=1:11320
wrappedCallback angular.js?body=1:11320
(anonymous function) angular.js?body=1:11406
Scope.$eval angular.js?body=1:12413
Scope.$digest angular.js?body=1:12225
Scope.$apply angular.js?body=1:12517
(anonymous function) angular.js?body=1:18627
jQuery.event.dispatch jquery.js?body=1:5117
elemData.handle
我的角度代码的结构如下:
Object.save( { object_id: 1 } ).$promise.then(function (response) {
if (response.success) {
//success
} else {
// something else
}
如何指示 Angular 处理这种 HTTP 响应?
【问题讨论】: