繁体   English   中英

对带有参数的webapi get方法的请求返回404

[英]Request to webapi get method with parameters returns 404

在WebApi上调用此方法时出现404错误。

在我的ApiController上,我有一个ArchiveTradingConfiguration方法。

public class TradingConfigurationController : ApiController
{
[AcceptVerbs("GET")]
    public bool ArchiveTradingConfiguration(string correlationId, string symbol)
    {
...
    }
}

这是我的startup.cs

public static class Startup
{
 public static void ConfigureApp(IAppBuilder appBuilder)
    {
    var config = new HttpConfiguration();
        config.EnableCors();

        config.Routes.MapHttpRoute(
        name: "ApiWithAction",
        routeTemplate: "api/{controller}/{action}/",
        defaults: null
        );

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

        config.Routes.MapHttpRoute(
        name: "ArchiveTradingConfiguration",
        routeTemplate: "api/{controller}/{correlationId}/{symbol}"
        );
     }
}

当我发出请求时,我使用:

var correlationId  = "SomeGuidAsString";
var symbol = "SomeStringValue"
var url = "api/TradingConfiguration/ArchiveTradingConfiguration/" + correlationId + "/" + symbol;

例如http:// localhost:8421 / api / TradingConfiguration / ArchiveTradingConfiguration / 034f7d92-dd02-46b3-9db2-11990ea5860c / SomeStringValue

任何想法?

现在正在工作。 我进行了2次更改。 我不知道是否需要第一个。 第二是肯定的。

我的动作包含我的控制器的名称。 将动作名称更改为“存档”

我的路线配置我忘记添加/ {action} /

routeTemplate: "api/{controller}/{action}/{correlationId}/{symbol}"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM