我有一个 MVC api 并且正在使用控制器来访问我的数据,但我正在使用 ajax 和 knockoutjs 来调用我的方法,但我收到以下错误:请求的资源不支持 http 方法“GET”。我尝试在控制器方法的顶部使用 [HttpGET],但它仍然不起作用。我不知道如何解决这个问题。
敲 ViewModel 做我的 api 调用:
vm = {
Data: ko.observable(),
Bound: 0,
Load: function () {
$.ajax({
type: "GET",
url: "../api/adusers",
contentType: "application/json;charset=utf-8",
success: function (result) {
vm.Data(ko.utils.unwrapObservable(ko.mapping.fromJS(result)));
if (!vm.Bound) {
ko.applyBindings(vm, document.getElementById("form1"));
$('#tableUsers').show();
vm.Bound = true;
}
},
error: function (xhr, status) {
alert(status + " - " + xhr.responseText);
}
})
}
}
API 控制器:
public class ADUsersController : ApiController
{
[HttpGet]
public static List<Models.Users> GetADUsers()
{
return AD.GetUsers(System.Configuration.ConfigurationManager.AppSettings["NETBios"]
, System.Configuration.ConfigurationManager.AppSettings["Container"]
, System.Configuration.ConfigurationManager.AppSettings["ADServerUN"]
, System.Configuration.ConfigurationManager.AppSettings["ADServerPW"]);
}
}