【问题标题】:403 Forbidden Error for .Net Core 3.1 Web Api only for Delete & PUT method.Net Core 3.1 Web Api 的 403 Forbidden Error 仅适用于 Delete & PUT 方法
【发布时间】:2021-03-30 06:59:01
【问题描述】:

.Net Core 3.1 和 angular 中的应用程序在本地完美运行。我托管了托管服务提供商之一的相同应用程序。

我收到错误“403 - 禁止访问:访问被拒绝”。用于 Web api 响应中的 PUT 和 DELETE 方法。我不知道为什么 GET 和 POST 方法在同一个应用程序中工作。

ASP.NET Core with IIS - HTTP Verb Not Allowed

以上链接有一些相同的问题,但出现 405 错误。同一线程中给出的解决方案也尝试过,但对我不起作用。

请帮忙。

【问题讨论】:

  • 403 禁止表示授权失败。您是否在 Web API 中配置了任何 Auth 服务?

标签: asp.net-core asp.net-core-webapi web-hosting


【解决方案1】:

这段代码对我有用。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <location path="." inheritInChildApplications="false">
    <system.webServer>
      <modules runAllManagedModulesForAllRequests="false">
        <remove name="WebDAVModule" />
      </modules>
      <handlers>
        <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
      </handlers>
      <aspNetCore processPath="dotnet" arguments=".\XXXXXXXXXXX.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" />
    </system.webServer>
  </location>
</configuration>

【讨论】:

    【解决方案2】:

    我向我的托管服务提供商提出了一张票。他们做了一些设置,然后就可以正常工作了。

    【讨论】:

      【解决方案3】:

      你的前端是有角度的吗?如果是,则必须正确添加 auth bearer header 以进行 put 和 delete。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-03-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-22
        • 1970-01-01
        • 2020-06-14
        • 2019-05-26
        相关资源
        最近更新 更多