【问题标题】:RESTFul API : create method doesn't executeRESTFul API:创建方法不执行
【发布时间】:2015-08-20 20:45:22
【问题描述】:

我正在尝试创建一个restful api,遵循这个Tutorial

问题是,当调用链接获取对象时,它可以工作:

[HttpGet]
        [ActionName("GetDemByID")]

但是当我尝试调用这个时:

[HttpPost]
        [ActionName("CreateDemByID")]

我收到 405 错误。

我的路由器似乎没问题:

    public static void Register(HttpConfiguration config)
    {
        // Web API configuration and services

        // Web API routes
        config.MapHttpAttributeRoutes();

        config.Routes.MapHttpRoute( 
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{action}/{id}",
            defaults: new { id = RouteParameter.Optional }
        );
    }

我是否缺少拥有完整 CRUD REST api 的东西? 我什至不通过调试模式下的方法...

Here我看到ActionName也可以用于post方法,所以不是方法的问题,而是路由器的问题,或者注解...

有没有比我实际使用的更好的教程(使用动作名称,没有 EF)?

编辑: 正如建议的那样,这仅仅是由于调用,在 Get 中进行的。

使用 RESTClient 在浏览器中进行测试,它允许我选择我想要使用的方法,现在它工作正常。

在制作 REST Api 时,模块非常有用。我以为没有必要。

谢谢。

【问题讨论】:

标签: c# asp.net-web-api


【解决方案1】:

对于 HTTP 请求,在您的 Ajax 请求中使用它

Content-type: application/json 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-17
    • 2014-02-25
    • 2018-02-19
    • 1970-01-01
    • 1970-01-01
    • 2011-05-05
    相关资源
    最近更新 更多