【问题标题】:WebAPI CORS Policy when Creating new record创建新记录时的 WebAPI CORS 策略
【发布时间】:2021-11-15 12:53:59
【问题描述】:

我有一个连接到 .NET CORE WebAPI 的 React 前端,我可以在一个控制器中毫无问题地调用、GET、删除和创建,但是,在另一个控制器上,当我调用 Create 时,我得到了CORS 策略错误消息。什么会导致一个控制器中的错误并且只有创建?我可以毫无问题地调用 Get 和 Delete,也可以毫无问题地从 PostMan 调用 Create,就像我从我的 React 应用程序调用它一样。

创建代码:(这在我从 Postman 测试时有效,我暂时连接到本地主机上的 API,并且只有 WebAPI 中的这个控制器将我踢出 CORS 策略错误,并且只有在创建调用上)

public IActionResult Create(CarDetails, details)
{
     db.CarDetails.Add(details);
     db.SaveChanges();
     return Ok(details.DetailsId);
}

【问题讨论】:

    标签: c# reactjs .net asp.net-core-webapi webapi


    【解决方案1】:

    PostMan 忽略 CORS 标头并且不会关心它们。这就是 PostMan 在浏览器关心的情况下工作的原因。

    话虽如此,我真的不知道为什么您的 API 会停止一个请求而不是另一个请求。标题有区别吗?

    我认为当在 .NET 论坛上提问时,您的问题得到解决的机会会更高。 CORS 错误是由后端/api 主机的设置引起的,而不是由 React/JS/Client 端代码引起的。

    您可能需要允许更多标头,打开 localhost:3000 或其他一些设置。

    【讨论】:

      【解决方案2】:

      我让它工作了。一旦我将它添加到我的 API 调用文件中,它就起作用了:

      headers: {
          "Content-type": "application/json"
        }
      

      【讨论】:

        猜你喜欢
        • 2021-07-20
        • 2018-09-01
        • 2021-09-15
        • 2023-01-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-10-14
        相关资源
        最近更新 更多