iis Post方法返回错误405:不支持http Get方法

5sxhfpxr  于 2022-11-12  发布在  其他
关注(0)|答案(2)|浏览(231)

我有一个asp.net框架API端点在IIS上抛出错误。它是一个post方法,如下所示:

[HttpPost]
    [Route("api/ebonyiproxy/validateexpectedpaymentref")]
    public async Task<IHttpActionResult> GetResult(CustomerRequest request)
    {
        ...
        catch (Exception ex)
        {
            _logger.Report(ex.StackTrace, DateTime.Now);
            if (ex.InnerException != null)
                _logger.Report(ex.InnerException.StackTrace, DateTime.Now);

            return InternalServerError(ex);
        }

    }

使用 Postman 进行测试;在本地,它返回有效的响应。在主机,它抛出下面的错误。请帮助。

{"Message":"The requested resource does not support http method 'GET'."}
7vhp5slm

7vhp5slm1#

使用[FromBody]属性如下。

public async Task<IHttpActionResult> GetResult([FromBody]CustomerRequest request)
8tntrjer

8tntrjer2#

通常这个错误是由WebDAV模块试图处理这类请求引起的。一个简单的解决方案是从模块和web.config文件中system.webServer节的处理程序中删除它。

<system.webServer>
  <modules>
    <remove name="WebDAVModule" />
  </modules>
  <handlers>
    <remove name="WebDAV" />
  </handlers>
</system.webServer>

相关问题