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

Ocelot API网关调用下游AccountAPI提示目标机器积极拒绝连接求助

问题排查与解决指南

核心问题修复

1. 修正Docker网络下的下游服务地址

Docker Compose 为同栈服务创建了独立内部网络,容器内的localhost指向自身,无法访问宿主机端口映射的其他容器服务。需修改ocelot.json配置:

  • 下游Host替换为Docker Compose中AccountAPI的服务名accountapi
  • 下游端口使用容器内部暴露的端口:HTTP对应80,HTTPS对应443,不要使用宿主机映射的5101端口
  • 同步校验DownstreamScheme与下游服务协议匹配

修正后的配置参考:

{
  "GlobalConfiguration": {
    "BaseUrl": "http://localhost:5111/"
  },
  "Routes": [
    {
      "DownstreamPathTemplate": "/Account/{url}",
      "DownstreamScheme": "http",
      "DownstreamHostAndPorts": [
        {
          "Host": "accountapi",
          "Port": 80
        }
      ],
      "UpstreamPathTemplate": "/MeHealth/Account/{url}",
      "UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE" ],
      "Priority": 1
    }
  ]
}

2. 修正调用路径拼写错误

你测试时调用的网关路径https://localhost:5111/MeHalth/Account/1存在拼写错误,MeHalth应为路由中配置的MeHealth,修正路径即可避免404问题。

验证步骤

  • 进入Ocelot容器内部,执行curl http://accountapi:80/Account/1,确认可以正常拿到返回结果
  • 配置修改后重启Ocelot服务,再通过网关调用验证功能是否正常

注意事项

如果下游使用HTTPS协议通信,需确保Ocelot容器信任AccountAPI的自签名证书,避免证书校验失败导致连接报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 07:09:03