Web Api and Angularjs
本文关键字:Angularjs and Api Web | 更新日期: 2023-09-27 18:21:17
我正在尝试实现搜索功能。我编写了一个操作方法,它接受一个查询,然后返回一个项目列表。首先,我不知道如何从angularjs服务中调用它,因为我尝试过的所有方法似乎都不起作用。
public IHttpActionResult GetPeople(string query) {
var results =db.People.Where(q=>q.Name.Contains(query));
return OK(results)
}
还有另一个方法,它只使用相同的GetPeople()返回数据库中的所有d项,但没有参数。
我试着在angularjs服务中将其称为
Search : function (q) {
var deffered = $q.defer();
$http.get("/api/People/"+q).success(deffered.resolve).error(deffered.reject);
return deffered.promise;
}
如何调用获取搜索值的d GetPeople方法
试试这个:
$http({ method:'GET', url:"/api/People/", params: { query:q}})
它也可以是服务器端方法声明。你有一个将GetPeople映射到api/People的Route属性吗?
一个小提示,在尝试用程序调用api之前,请尝试手动调用它,如果你能分享你的路由配置,那会很有帮助,但无论如何,我认为这应该起作用-
Search : function (q) {
var deffered = $q.defer();
$http.get("/api/People?query?"+q).success(deffered.resolve).error(deffered.reject);
return deffered.promise;
}
在默认情况下,web api接受动作中的参数作为查询参数,所以这应该起作用,如果你想要一条"更漂亮"的路线,你应该在应用程序的RouteConfig部分创建一条新路线。