作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 MVC4 项目上创建了一个 API Controller
这是我创建的用于测试 API 功能的方法
private string Login(int id)
{
Employee emp = db.Employees.Find(id);
return emp.Firstname;
}
当我尝试使用 localhost:xxxx/api/controllerName/Login?id=2
访问此 api 时,我得到了
{"$id":"1","Message":"The requested resource does not support http method 'GET'."}
我做错了什么?
此外,这是我的 api 配置文件
public static void Register(HttpConfiguration config)
{
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
var json = config.Formatters.JsonFormatter;
json.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.Objects;
config.Formatters.Remove(config.Formatters.XmlFormatter);
}
最佳答案
将方法修饰符从 private 更改为 public,同时将相关的接受动词添加到操作中
private string Login(int id)
更改为:
[HttpGet] // Or [AcceptVerbs("GET", "POST")]
public string Login(int id)
关于asp.net - 网络 API : The requested resource does not support http method 'GET' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15455568/
我是一名优秀的程序员,十分优秀!