Angularjs 使用asp.net webApi的Angular js工厂
如何在angular js工厂中使用webApi WebApiAngularjs 使用asp.net webApi的Angular js工厂,angularjs,asp.net-web-api,Angularjs,Asp.net Web Api,如何在angular js工厂中使用webApi WebApi public class WarrantyController: ApiController { public WarrantyViewModel Get(string c, string l, string s, string cs, string productcode, string ordercode, string overrides) { var response = Query(new Warr
public class WarrantyController: ApiController {
public WarrantyViewModel Get(string c, string l, string s, string cs, string productcode, string ordercode, string overrides) {
var response = Query(new WarrantyQuery(UserContext.CreateContext(c, l, s, cs), productcode, ordercode, overrides));
return response.Data;
}
}
这将返回json结果:
GET/api/shop/warranty/GET/us/en/abc/19/productA/abc-123 HTTP/1.1与任何api通信的方式相同,请使用该服务 通过此操作,您可以获得HTTP动词速记:
// Returns a promise with warranty list as a resolved parameter
function getWarranties() {
return $get('/api/warranty').then(function(resp) {
return resp.data;
});
}
或者您可以使用原始$http
方法:
// Returns a promise with warranty list as a resolved parameter
function getWarranties() {
return $http({
url: '/api/warranty',
method: 'get',
// other options...
}).then(function(resp) {
return resp.data;
});
}
Angular Resource模块是使用Rest API的真正好帮手 您可以创建类似以下内容的工厂:
angular.module('appService', ['ngResource'])
.factory('Warranty', function($resource) {
return $resource('/api/warranty/');
});
然后,将工厂注入到angular应用程序中,如下所示:
var app = angular.module('app', ['appService']);
最后,您可以在控制器中访问工厂:
app.controller('warrantyController', function($scope, Warranty) {
$scope.warranties = Warranty.query();
});
所有其他CRUD操作将自动添加到保修对象中。
有关更多信息,您可以访问