GET 请求正常工作,但某些 POST 请求导致 net::ERR_CONNECTION_RESET

问题描述 投票:0回答:1

我自己在开发和生产中以及部署后在生产中的用户都出现了一个奇怪的错误。我有一个网络错误响应,这对我来说是新的。我的应用程序已经开发了一段时间,并且已经部署到IIS上供用户使用。最近,我从 Mac 切换到 Windows 笔记本电脑(不确定这是否与此有关,但完全公开),并且由于我发布了一些小更新,某个端点现在收到 net::ERR_CONNECTION_RESET 进行某些上传。这让我摸不着头脑,因为即使在本地调试时它也在这样做,所以这不是生产问题。我真的不知道要发布什么,但这是我的控制器端点:

    [HttpPost("")]
    [Authorize]
    [OktaAllowedRoles(["end-user"])]
    [EnableRateLimiting("api")]
    public async Task<IActionResult> AddCertificationReviewAsync([FromForm] AddCertificationReviewDTO addCertificationReviewDTO)
    {
        try
        {
            var certificationReviewDTO = await _certificationReviewService.AddCertificationReviewAsync(addCertificationReviewDTO);
            return Ok(new ResponseDTO<CertificationReviewDTO>(){
                Succeeded = true,
                StatusCode = 200,
                Message = "The review has been successfully uploaded.",
                Data = certificationReviewDTO,
                Pagination = null});
        }
        catch(Exception ex)
        {
            return Ok("There was an issue adding the review. Please contact administrator.");
        } 
    }

我希望我有更多的信息,但这只是一种不知从何而来的信息,我唯一能想到的是它是一个 Windows 问题,甚至在部署中这个 Windows 问题现在仍然存在?它可能在我的前端吗?我将 vuejs 与 vuetify 一起使用。我已经更新了我的所有软件包和 axios 以确保它不是前端连接,但我不确定说实话。

我在控制器的顶部放置了一个断点,但它从未命中。就好像前端无法找到某些请求的后端,尽管 Get 每次都可以工作,甚至某些 POST 似乎也可以工作。

通过更多断点,我确实到达了控制器声明的顶部,因此控制器确实收到了请求,但遍历它永远不会到达 POST 端点。

    protected ICertificationReviewService<CertificationReview> _certificationReviewService;
    public CertificationReviewController(IConfiguration configuration, ILogger<BaseController> logger, IHttpClientFactory httpClientFactory, ICertificationReviewService<CertificationReview> CertificationReviewService) : base(configuration, logger, httpClientFactory)
    {
        _certificationReviewService = CertificationReviewService;
    }
vue.js asp.net-core axios
1个回答
0
投票

你的问题很模糊,所以我的回答也很模糊。

选项 1)我假设您正在上传一些大文件,但您的互联网连接速度不快且不稳定。也许是一些 VPN 或其他网络交换。这就是浏览器获取网络的方式:重置。

选项 2)上传代码中断,服务退出,内部服务器代理重置连接。

尝试使用 docker 在本地计算机中复制生产环境并从那里进行调试。

© www.soinside.com 2019 - 2024. All rights reserved.