C# MVC Web Api错误403.14

C# MVC Web Api错误403.14,c#,iis,asp.net-web-api,asp.net-web-api-routing,C#,Iis,Asp.net Web Api,Asp.net Web Api Routing,我正在做一个MVC5WebAPI应用程序。我正在做一个简单的例子 创建Web Asp.Net Web应用程序 选择Empty和API 然后我添加了一个名为Home的Api2控制器,并添加了一个名为Get() 方法Get()如下所示 public string Get() { return "Hello World"; } 我运行应用程序并完成URL http://localhost:56464/Home/Get 出错了 错误HTTP 404.0-找不到 我测试更改WebApiConf

我正在做一个MVC5WebAPI应用程序。我正在做一个简单的例子

  • 创建Web Asp.Net Web应用程序

  • 选择Empty和API

  • 然后我添加了一个名为
    Home
    的Api2控制器,并添加了一个名为
    Get()

    方法
    Get()
    如下所示

    public string Get()
    {
        return "Hello World";
    }
    
    我运行应用程序并完成URL

    http://localhost:56464/Home/Get
    
    出错了

    错误HTTP 404.0-找不到

    我测试更改
    WebApiConfig
    添加

    {action}
    
    但我也犯了同样的错误

    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 }
        );
    }
    
    当我启动应用程序时
    http://localhost:56464/
    ,我收到了这个错误

    错误HTTP 403.14-禁止

    我总是从Visual Studio 2013运行应用程序。我没有发布它


    缺少什么?

    有几个问题

    首先是web api路由模板

    api/{controller}/{action}/{id}
    
    请注意
    api
    前缀

    这意味着你必须浏览到

    http://localhost:56464/api/Home/Get
    
    http://localhost:56464/
    无效,因为路由具有
    api
    前缀。因此,禁止的错误是该地址的默认主机


    为了能够在问题中使用所需的URL,您需要更改路由模板以匹配所需的模板。

    存在一些问题

    首先是web api路由模板

    api/{controller}/{action}/{id}
    
    请注意
    api
    前缀

    这意味着你必须浏览到

    http://localhost:56464/api/Home/Get
    
    http://localhost:56464/
    无效,因为路由具有
    api
    前缀。因此,禁止的错误是该地址的默认主机


    为了能够在问题中使用所需的URL,您需要更改路由模板以匹配所需模板。

    此问题是否已解决?此问题是否已解决?