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

采用PATTERN 3部署后,无法在网关中调用API的技术求助

问题:采用PATTERN 3部署API后无法在网关调用,提示无效URL

问题描述

采用PATTERN 3完成API部署后,无法在网关中调用目标API testie:v1.2,调用时返回无效URL错误。

相关日志信息

[2024-03-29 10:43:48,081]  INFO - DependencyTracker API : testie:v1.2 已成功添加到Synapse配置中
2024-03-29T10:43:48.081862823Z [2024-03-29 10:43:48,081]  INFO - API {api:testie:v1.2} 正在初始化API: testie:v1.2
2024-03-29T10:45:59.721494908Z [2024-03-29 10:45:59,720]  INFO - LogMediator {inboundendpoint:SecureWebhookServer} 状态 = 消息已分发至主序列。无效URL., 资源 = /gettie/1.2, 健康检查URL = /gettie/1.2
[2024-03-29 10:46:11,975]  INFO - LogMediator {inboundendpoint:SecureWebhookServer} 状态 = 消息已分发至主序列。无效URL., 资源 = /gettie/1.2, 健康检查URL = /gettie/1.2
2024-03-29T10:46:12.398656860Z [2024-03-29 10:46:12,398]  INFO - LogMediator {inboundendpoint:SecureWebhookServer} 状态 = 消息已分发至主序列。无效URL., 资源 = /favicon.ico, 健康检查URL = /favicon.ico
2024-03-29T10:46:12.400018041Z [2024-03-29 10:46:12,398]  WARN - PassThroughHttpSender 尝试向已关闭的连接提交响应 : http-incoming-16

问题分析

  • 前两条日志确认API testie:v1.2已成功添加到Synapse配置并完成初始化,部署流程无异常。
  • 核心错误为无效URL., 资源 = /gettie/1.2,说明网关接收到的请求路径/gettie/1.2无法匹配到已部署的API,路径不匹配是根因。
  • 最后的连接关闭警告是无效URL导致的后续问题,无需单独处理。

解决方案

  • 核对API上下文路径配置
    • 检查testie:v1.2的API上下文路径是否为/testie/1.2,而非请求中的/gettie/1.2。在API Manager配置页面确认上下文路径与版本的组合是否和请求路径一致。
  • 检查Inbound Endpoint路由规则
    • PATTERN 3部署依赖的SecureWebhookServer入站端点,需确认其URL Pattern包含目标API的上下文路径,或已配置正确的路由规则将请求转发至testie:v1.2,同时排查是否存在路径冲突。
  • 验证Synapse配置文件
    • 查看<APIM_HOME>/repository/deployment/server/synapse-configs/default/api/下对应API的XML文件,确认<api>标签的context属性、<resource>标签的uri-template是否与请求路径匹配。
  • 使用正确路径测试
    • 若API上下文路径为/testie/1.2,尝试用正确路径调用:http://<网关地址>:<端口>/testie/1.2/[资源路径],替换为实际的网关信息和资源路径。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 01:55:23