gpt4 book ai didi

c# - 未通过请求找到 WebAPI HTTPDelete 方法,但在 Swagger 中找到

转载 作者:行者123 更新时间:2023-11-30 18:19:55 25 4
gpt4 key购买 nike

我有 API Controller ,方法是:

    [Route("campaigns")]
[HttpDelete]
public async Task<IHttpActionResult> Delete(string brandId,string campaignId)
{
try
{
var merchantId = CurrentUserInfo.GetMerchantId();
await _service.DeleteAsync(merchantId, brandId, campaignId);
return StatusCode(HttpStatusCode.NoContent);
}
catch (Exception e)
{
Log(e);
return BadRequest(e.Message);
}
}

然后从 angularJS app 我发送请求:

 $http.delete(config.resourceNames.campaign, { params: { brandId: brandId, campaignId: campaignId } })
.then(function (response) {
return response;
}, function (error) {
return error;
});

配置文件:

 var resourceNames = {
campaign: '/api/campaigns'
};

所以路由是有效的。但是请求总是返回 404 NOT FOUND

我通过 Swagger 检查了它,DELETE 方法在列表中可见,但是当我尝试使用它时。它还返回 NOT FOUND

为什么会这样?

编辑:

使用“ISS Express”时出现错误 404,但当我切换到“Local ISS”时,错误更改为 405 Method not allowed。

最佳答案

可能你需要写:

[Route("api/campaigns")]

关于c# - 未通过请求找到 WebAPI HTTPDelete 方法,但在 Swagger 中找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38095723/

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