如何使用 Angularjs 控制器从 ASP.NET ApiController 调用特定的 get 方法?
How to call specific get method from ASP.NET ApiController using Angularjs controller?
我有包含多个 GET 方法的 ApiController class。
//method 1
public IEnumerable<Drive> GetProducts()
{
...
}
//method2
public IEnumerable<string> GetCustomer(string name)
{
...
}
//method3
public IEnumerable<string> GetCustomers()
{
...
}
这是我的angularjs脚本
var app = angular.module("MyApp", []);
app.controller("MyController", function ($scope, $http) {
$http.get('http://localhost:53551/api/values/GetProducts').
success(function (data, status, headers, config) {
$scope.strings = data;
}).
error(function (data, status, headers, config) {
alert("sa");
});
debugger;
$scope.open = function (name) {
debugger;
$http.get('http://localhost:53551/api/values/GetCustomer?' + name ).
success(function (data, status, headers, config) {
$scope.strings = data;
})
};
});
所有函数只调用 GetProducts()。但我想每次都打电话给一个特定的人。
是否可以通过 angularjs 从 ApiControler 调用特定的 GET 方法?
如果您按如下方式注册了 DefaultWebAPI 路由
routes.MapHttpRoute(
name: "API Default",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
那么你只需要调用方法名称/api/controllerName/actionName
(不需要在动作名称中提及HttpVerb
)。每个动作名称前的前缀表示动作的性质。我假设您 ValuesController
具有上述所有操作。
http://localhost:53551/api/values/customer
http://localhost:53551/api/values/products
http://localhost:53551/api/values/customers
我有包含多个 GET 方法的 ApiController class。
//method 1
public IEnumerable<Drive> GetProducts()
{
...
}
//method2
public IEnumerable<string> GetCustomer(string name)
{
...
}
//method3
public IEnumerable<string> GetCustomers()
{
...
}
这是我的angularjs脚本
var app = angular.module("MyApp", []);
app.controller("MyController", function ($scope, $http) {
$http.get('http://localhost:53551/api/values/GetProducts').
success(function (data, status, headers, config) {
$scope.strings = data;
}).
error(function (data, status, headers, config) {
alert("sa");
});
debugger;
$scope.open = function (name) {
debugger;
$http.get('http://localhost:53551/api/values/GetCustomer?' + name ).
success(function (data, status, headers, config) {
$scope.strings = data;
})
};
});
所有函数只调用 GetProducts()。但我想每次都打电话给一个特定的人。 是否可以通过 angularjs 从 ApiControler 调用特定的 GET 方法?
如果您按如下方式注册了 DefaultWebAPI 路由
routes.MapHttpRoute(
name: "API Default",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
那么你只需要调用方法名称/api/controllerName/actionName
(不需要在动作名称中提及HttpVerb
)。每个动作名称前的前缀表示动作的性质。我假设您 ValuesController
具有上述所有操作。
http://localhost:53551/api/values/customer
http://localhost:53551/api/values/products
http://localhost:53551/api/values/customers