前言:在开发环境中,博主在自己的电脑上开启所有服务,没有问题,gateway能正常请求,但是在测试环境就出现了:

Forwarding error

gateway转发请求错误

切入正题:原因是:我的geteway在机器A上,而转发服务在机器B上

	/**
	 * Flag to say that, when guessing a hostname, the IP address of the server should be
	 * used in prference to the hostname reported by the OS.
	 */
	private boolean preferIpAddress = false;

约定中的preferIpAddress 默认为 false,所以我们默认前缀是我们的机器码,如下

因为是跨机器调用,gateway无法从机器码拼接路径来调用,所以导致转发错误,而开发环境由于博主是在自己的电脑上,gateway与被调用服务在同一个机器,所以不存在此问题

解决:加上

#使用ip地址
prefer-ip-address: true

让gateway通过ip去查找服务

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐