首页 > 解决方案 > 如何在 Asp Net Web Api 中默认返回 404

问题描述

我有一个简单的Asp Net Web Api, 有一个端点,而且效果很好。但是我想,当您(loclahost:8001/)在我的情况下调用根服务器时,它会返回404给我,而不是HTTP Error 403.14 - Forbidden. 我是新手,ASP NET MVC习惯了asp net core。请问,我怎样才能回到404这里?

也许路线配置会有所帮助:

public class RouteConfig
    {
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapRoute(
                name: "Default",
                url: "{controller}/{id}",
                defaults: new { controller = "GPayController"}
            );
        }
    }

标签: c#asp.netasp.net-web-apierror-handling

解决方案


<system.webServer>在 web.config 文件中的部分下添加此配置:

<system.webServer>
  <handlers>
    <add name="StopDirectoryBrowsing" path="*." resourceType="Directory" verb="*" 
         preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
  </handlers>
<system.webServer>

推荐阅读