首页 > 解决方案 > NET CORE 在发送大型 JSON 时没有“访问控制允许来源”

问题描述

我创建了一个 Net core API,并且在请求中接收了一些文件作为字节数组。问题是文件很大时,如果不是,它可以正常工作。我读到这个问题与 json 长度有关,我做了以下事情:

我已添加到 web.config

<system.webServer>
    <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="2147483647"></requestLimits>
      </requestFiltering>
    </security>
</system.webServer>

<system.web>
    <httpRuntime maxRequestLength="2147483647" />
</system.web>

除此之外,我已经添加到 Startup.cs

  services.Configure<FormOptions>(x =>
            {
                x.ValueLengthLimit = int.MaxValue;
                x.MultipartBodyLengthLimit = int.MaxValue;
                x.MultipartHeadersLengthLimit = int.MaxValue;
            });

有什么解决这个问题的建议吗?

标签: c#asp.net.netasp.net-core.net-core

解决方案


默认情况下,浏览器会阻止来自页面以外的其他域的 json 请求,除非 json 请求具有 Access-Control-Allow-Origin 标头,因此您需要将该标头添加到该服务上的 json 请求或使用相同的域两个都。

更多信息:https ://developer.mozilla.org/en-US/docs/HTTP/Access_control_CORS


推荐阅读