414错误在发布时出错,并在javascript

时间:2019-06-03 13:08:35

标签: javascript .net angular

我正在做一个与.net core web.api交谈的.net core 2.2角度应用程序,这是我尝试学习角度的简单CRUD应用程序。我尝试了多种解决方案,但仍然收到错误414(请求URI太长)

我尝试取出base64映像,以为这可能是问题所在,但仍然没有得到相同的错误。我尝试添加UseKestrel和ConfigureKestrel以增加options.Limits.MaxRequestBodySize

 .UseKestrel(options =>
        {
            options.Limits.MaxRequestBodySize = null;
            //options.Limits.MaxRequestBufferSize = 300000000;
            //options.Limits.MaxRequestHeadersTotalSize = 300000000;

        });

我将其放在program.cs文件的webapi和.net核心angular应用程序中。在我的web.api中,我还更改了所有发布内容,并禁用了限制。将其放在web.api中的所有方法上。

 [HttpPost("GetUser"), DisableRequestSizeLimit, RequestFormLimits(MultipartBodyLengthLimit = Int32.MaxValue, ValueLengthLimit = Int32.MaxValue)]
        [Route("GetUser")]
        public async Task<IActionResult> GetUser(int? userId)

逐步执行它看起来像调用了web.api,然后会给我该错误,然后我的断点将出现在web.api上,因此当它返回到对话框关闭时的角度部分时,从不刷新网格。它正在更新数据库,因为如果刷新页面,则会显示更新的记录。我希望它可以刷新网格,但是会发生错误,因此它的可观察角度刷新永远不会在前端发生。

1 个答案:

答案 0 :(得分:0)

假设您的URI的字符串字符串数据太长。您可以根据服务器的限制将其分为多个部分。然后提交第一个文件,以我为例编写一个文件。然后提交下一个附加到先前添加的数据中