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

WSO2 APIM 3.2.0 Dashboard启动报feign.RetryableException异常如何解决

WSO2 APIM 3.2.0 Dashboard重定向异常解决方案

异常触发原因

  • 该异常的核心是Feign客户端向APIM的DCR(动态客户端注册)接口发起POST请求时,收到了3xx重定向响应,而POST属于非幂等请求,Feign默认在流传输模式下不会自动跟随重定向,也不允许重试,因此直接抛出feign.RetryableException。
  • 你的场景下触发重定向的常见原因:
    • 配置的kmDcrUrl使用IP地址访问APIM,而WSO2 APIM默认开启了主机名校验,当请求的Host头和APIM配置的主机名不一致时,会自动触发重定向到默认主机名对应的地址。
    • APIM端的SSL证书没有被Dashboard信任,SSL握手过程触发了重定向跳转。

修复步骤

1. 处理主机名重定向问题

两种方案二选一即可:

  • 方案A:使用APIM的主机名访问(推荐)
    1. 先在Dashboard所在服务器的hosts文件中添加APIM节点的主机名映射,格式如下:
    172.25.129.66 <你的APIM节点主机名,默认是localhost>
    
    1. 修改Dashboard配置文件,把所有https://172.25.129.66:9443开头的地址替换为https://<APIM主机名>:9443,比如kmDcrUrl修改为https://<APIM主机名>:9443/client-registration/v0.16/register。
  • 方案B:关闭APIM的主机名校验(测试环境用)
    打开APIM节点的<APIM_HOME>/repository/conf/deployment.toml文件,添加如下配置后重启APIM:
    [transport.https]
    enable_hostname_validation = false
    [transport.http]
    enable_hostname_validation = false
    

2. 配置Feign支持重定向与SSL信任

编辑Dashboard的启动脚本,Windows系统修改<DASHBOARD_HOME>/bin/dashboard.bat,Linux系统修改<DASHBOARD_HOME>/bin/dashboard.sh,在JAVA_OPTS环境变量中追加以下参数:

# 导入APIM的信任证书,生产环境建议正式签发证书替换自签名证书
-Djavax.net.ssl.trustStore=<DASHBOARD_HOME>/resources/security/client-truststore.jks
-Djavax.net.ssl.trustStorePassword=wso2carbon
# 允许Feign自动跟随POST请求重定向
-Dfeign.httpclient.follow-redirects=true

3. 重启Dashboard服务

保存所有配置修改后,重启Dashboard服务即可验证异常是否消失。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 17:57:03