You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用ASP.NET MVC时jQuery Ajax POST报ERR_CONNECTION_REFUSED错误

解决POST请求net::ERR_CONNECTION_REFUSED问题

针对你遇到的连接拒绝错误,结合GET请求正常、POST失败的情况,从以下几个方向排查:

1. 确认服务器运行状态与端口匹配

  • 检查ASP.NET MVC应用实际运行的端口是否为7206:右键项目→属性→调试,查看「应用URL」中的端口号,确保和Ajax请求的https://localhost:7206完全一致。
  • 如果使用HTTPS,尝试临时切换为HTTP测试(比如http://localhost:5206,对应项目调试中的HTTP端口),排除SSL证书异常导致的连接拦截。

2. 配置跨域(CORS)策略

GET正常但POST失败,大概率是跨域配置未开放POST方法。在项目Startup.cs中补充CORS配置:

// 在ConfigureServices方法中添加
services.AddCors(options =>
{
    options.AddPolicy("AllowAllRequests", policy =>
    {
        policy.AllowAnyOrigin()
              .AllowAnyHeader()
              .AllowAnyMethod(); // 或明确指定AllowMethods("GET", "POST")
    });
});

// 在Configure方法中启用(注意顺序:放在UseRouting之后,UseAuthorization之前)
app.UseCors("AllowAllRequests");

3. 修正Ajax代码中的问题

移除嵌套的$(document).ready

你的insert函数内部嵌套了$(document).ready,会导致点击事件逻辑无法正确触发。调整代码结构:

$(document).ready(function() {
    // 绑定按钮点击事件(假设按钮id为submitBtn)
    $("#submitBtn").click(function() {
        var ownerCreate = {
            owner : $("input[name=emailfm]").val(),
            testModelArea : $("input[name=subjecttitle]").val()
        };
        
        $.ajax({
            url: "https://localhost:7206/api/Owner?locationId=" + $("input[name=firstname]").val(),
            type: "POST",
            data: JSON.stringify(ownerCreate),
            contentType: "application/json", // 替换headers写法,jQuery推荐直接用contentType属性
            success:function(response){
                // 后端返回的是字符串"Successfully created",不是数字1,修正判断逻辑
                if(response === "Successfully created"){
                    alert("Data Added Successfully");
                } else {
                    alert("操作失败:" + response);
                }
            },
            error: function(xhr, status, error) {
                // 新增错误回调,便于调试
                console.log("错误状态:" + status);
                console.log("错误信息:" + error);
                console.log("响应内容:" + xhr.responseText);
            }
        });
    });
});

4. 验证后端路由匹配

  • 确认OwnerController类上标注了正确的路由特性,比如:
    [Route("api/[controller]")]
    [ApiController]
    public class OwnerController : ControllerBase
    {
        // 你的CreateOwner方法
    }
    
  • 检查locationId参数是否能正常获取:确保$("input[name=firstname]").val()返回的是有效数字,避免后端参数绑定失败。

5. 排除防火墙/代理干扰

  • 临时关闭本地防火墙,测试是否能正常连接。
  • 如果使用了Fiddler、Charles等代理工具,暂时关闭代理,避免HTTPS请求被拦截。

内容的提问来源于stack exchange,提问作者cody

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 19:32:05