gpt4 book ai didi

c# - Web API 2 的不区分大小写的路由

转载 作者:太空宇宙 更新时间:2023-11-03 17:00:05 36 4
gpt4 key购买 nike

在 Fiddler 中测试以下方法,api/test 返回 200,api/Test 返回 301

我看到 MVC 路由有一个强制小写的新选项,但找不到任何用于 Web API 路由的选项。

[HttpGet]
[Route("test")]
public IHttpActionResult Testing()
{
return Ok();
}

最佳答案

默认情况下,Web API 会查找以 Controller 方法名称开头的不区分大小写的匹配项。

试着改变你的路线:

[RoutePrefix("api/test")]
public class TestController : ApiController

[HttpGet]
[Route("testing")]
public IHttpActionResult Testing()
{
return Ok();
}

您的 WebApiConfig.cs 类必须使用默认设置:

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

// Web API routes
config.MapHttpAttributeRoutes();

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

有关使用 webapi 2.0 进行路由的更多信息,请查看此页面:https://www.asp.net/web-api/overview/web-api-routing-and-actions/attribute-routing-in-web-api-2

关于c# - Web API 2 的不区分大小写的路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40248468/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com