nacos服务注册地址配置(server-addr)failed to req API:/nacos/v1/ns/instance after all servers([xxxxxx])

Nacos服务注册地址server-addr配置

先贴报错

在这里插入图片描述
java.lang.IllegalStateException: failed to req API:/nacos/v1/ns/instance after all servers([http://xxxxxx.viphk.91tunnel.co]) tried: failed to req API:http://xxxxxx.viphk.91tunnel.co/nacos/v1/ns/instance. code:500 msg: java.net.UnknownHostException: xxxxxx.viphk.91tunnel.co

因为遇到上面的报错,所以才深究了一下nacos服务注册的server-addr属性的配置。

展示两个正确的配置

spring.cloud.nacos.discovery.server-addr=http://xxxxxx.viphk.91tunnel.com/
spring.application.name=renren-fast
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8838
spring.application.name=renren-fast

第一种(server-addr)如果的你域名是包含端口号的,那么你一定要把http://或者https:// 这种协议头给带上,且域名后面一定要加 /

放源码解释
为啥要加协议头
在这里插入图片描述
在这里插入图片描述

源码中的curServer就是server-addr配置的值
http://xxxxxx.viphk.91tunnel.com/
看远码可以知道,如果地址(xxxxxx.viphk.91tunnel.com)没有加协议头,代码会将端口号拼接在地址后面。
得到新的地址:xxxxxx.viphk.91tunnel.com:8848,
这样新的地址就有问题了!

加协议头后地址结尾为啥要加 /
在这里插入图片描述
从源码可以看出,如果你的地址有协议头,那么必然会有双斜杠“//”,那么源码将会把你的地址截断一个字符
得到新的地址:http://liubaitest1.viphk.91tunnel.co

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值