如何删除WebAPI核心中的WebDAV模块?

use*_*730 5 asp.net-core-webapi

我使用 .Net Core 2.2 创建了一个简单的 WebAPI。当我使用 POSTMAN 通过 PUT HttpVerb 命中操作方法时,我收到 405 - Method not allowed 消息。当我在线检查这一点时,建议是从 Web.config 中删除 WebDAV 模块。但在.Net Core WebAPI中,有launchSettings.json和appsettings.json用于配置。

请帮助我了解如何在上述配置文件中设置设置以删除 WebDAV 模块。

我是 .Net Core 的新手。

我尝试创建一个 Web.Config 并使用以下代码删除 WebDAV 模块,但没有成功

<system.webServer>
  <modules runAllManagedModulesForAllRequests="false">
    <remove name="WebDAVModule" />
  </modules>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

我没有在不使用.Net Core的情况下完成WebAPI。来自 POSTMAN 的请求预计会命中 PUT 方法。

请帮忙。

如何将此设置转换为 appSettings.json 的 JSON 格式

Tha*_*mer 1

我们也遇到了同样的问题;PUT 在我们的测试环境 IIS Express 中启用,WebDAV 安装在生产环境中,禁用了 PUT 和 DELETE 动词。这导致生产服务器上出现错误:405 HTTP verb used to access this page is not allowed

通过将配置文件添加到禁用 WebDAV 的项目可以解决此问题web.config- 不要尝试将其添加到app.settingsJSON 文件。

web.config文件如下:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="false">
      <remove name="WebDAVModule" />
    </modules>
  </system.webServer>
</configuration>
Run Code Online (Sandbox Code Playgroud)