我的Web API控制器中有以下方法
[HttpGet]
[ActionName("GetByModule")]
public Object Get([FromUri]int id)
{
//var dblayer = new Db(WebConfigurationManager.ConnectionStrings["ConnectionString"]);
var annDb = new ContactsDB(WebConfigurationManager.ConnectionStrings["ConnectionString"]);
return annDb.GetContacts(id).Tables[0];
}
这里是我用来调用方法的Jquery代码
$.ajax({
type: "GET",
contentType: "application/json",
url: link,
data: null,
dataType: "json",
success: function (data) {
alert(data.d);
},
error: function (jqXHR, textStatus, err) {
alert("Error");
}
});
要调用的URL是
http://localhost:56834/api/Contacts/GetByModule?id=9
但是我一直在从Jquery调用它时不允许HTTP 405方法。
知道我可能做错了什么。
先谢谢
答案 0 :(得分:1)
您能确定要提出“GET”请求吗? (可能来自Fiddler或浏览器的调试模式)。我这样说是因为你似乎在你的jquery中设置了“contentType”属性,理想情况下不应该存在,因为你不应该在“GET”请求中发送正文。你可以分享你的完整原始请求(可能来自Fiddler)吗?