ngResource 像 GET 一样对待 POST
ngResource treating POST like GET
我注意到虽然我在我的 ngResource 工厂上指定了 "post",但它以 GET 方式传递参数。
用户工厂示例:
myApp.factory('facUser',['$resource', function ($resource) {
return $resource('/api/User/:route', {}, {
EditUser: { method: 'POST', isArray: true, params: { route: "EditUser", cid: '@cid', objEditUser: '@objEditUser' } }
})
}]);
这是编辑用户的调用:
$scope.Edited_User = facUser.EditUser({
cid: $stateParams.company_id, objEditUser: TempUserInfo
}, function success(data, status, headers) {
console.log(data);
}, function err(data, status, headers, config) {
});
因此,当我调用它时,出于某种原因,我看到我的所有值都在 API 的 header 上传递,就好像它是 GET 一样。
我无法弄清楚如何使用 $save() 或如何 post/put 将此作为表单。
params
关键字将解析任何路由变量,其余的将在请求查询中。
要在请求正文中发送值,您可以执行以下操作:
var user = new User( {
cid: $stateParams.company_id,
objEditUser: TempUserInfo
}) ;
user.$EditUser();
并将您的资源更改为:
$resource('/api/User/:route', {}, {
EditUser: { method: 'POST', isArray: true, params: { route: "EditUser" } }
})
}]);
myApp.factory('facUser',['$resource', function ($resource) {
return $resource('/api/User/:route', {}, {
EditUser: { method: 'POST', isArray: true, params: { route: '@route'} }
})
}]);
然后...
$scope.Edited_User = facUser.EditUser({
route: "EditUser"
}, {cid: $stateParams.company_id, objEditUser: TempUserInfo}, function success(data, status, headers) {
console.log(data);
}, function err(data, status, headers, config) {
});
本质上第一部分是参数。
第二部分是post个值。
我注意到虽然我在我的 ngResource 工厂上指定了 "post",但它以 GET 方式传递参数。
用户工厂示例:
myApp.factory('facUser',['$resource', function ($resource) {
return $resource('/api/User/:route', {}, {
EditUser: { method: 'POST', isArray: true, params: { route: "EditUser", cid: '@cid', objEditUser: '@objEditUser' } }
})
}]);
这是编辑用户的调用:
$scope.Edited_User = facUser.EditUser({
cid: $stateParams.company_id, objEditUser: TempUserInfo
}, function success(data, status, headers) {
console.log(data);
}, function err(data, status, headers, config) {
});
因此,当我调用它时,出于某种原因,我看到我的所有值都在 API 的 header 上传递,就好像它是 GET 一样。
我无法弄清楚如何使用 $save() 或如何 post/put 将此作为表单。
params
关键字将解析任何路由变量,其余的将在请求查询中。
要在请求正文中发送值,您可以执行以下操作:
var user = new User( {
cid: $stateParams.company_id,
objEditUser: TempUserInfo
}) ;
user.$EditUser();
并将您的资源更改为:
$resource('/api/User/:route', {}, {
EditUser: { method: 'POST', isArray: true, params: { route: "EditUser" } }
})
}]);
myApp.factory('facUser',['$resource', function ($resource) {
return $resource('/api/User/:route', {}, {
EditUser: { method: 'POST', isArray: true, params: { route: '@route'} }
})
}]);
然后...
$scope.Edited_User = facUser.EditUser({
route: "EditUser"
}, {cid: $stateParams.company_id, objEditUser: TempUserInfo}, function success(data, status, headers) {
console.log(data);
}, function err(data, status, headers, config) {
});
本质上第一部分是参数。
第二部分是post个值。