V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
youngs
V2EX  ›  Java

@FeignClient 必须指定 url 才能找到服务,为什么?

  •  1
     
  •   youngs · 2018-02-22 09:52:08 +08:00 · 6493 次点击
    这是一个创建于 2497 天前的主题,其中的信息可能已经有所发展或是发生改变。
    @FeignClient(name = "passport-service", url = "http://100.66.178.33:8089/passport")
    public interface PassportServiceApi {
    @RequestMapping(value = "/api/auths/token/{username}", method = RequestMethod.GET)
       AbstractResult getTokenByUsername(@PathVariable("username") String username);
    }
    
    上面的代码为什么必须制定 url 才能找到服务?如果不指定 url 就报 404 的问题,不指定 url 时跟踪代码发现最后生成的地址是 /api/auths/token/,并没有加上域名。
    12 条回复    2018-02-24 10:03:52 +08:00
    CYKun
        1
    CYKun  
       2018-02-22 10:52:08 +08:00 via Android   ❤️ 1
    不要把 ip 贴出来啊
    LeeSeoung
        2
    LeeSeoung  
       2018-02-22 10:54:02 +08:00
    服务中心配了?
    jych1224
        3
    jych1224  
       2018-02-22 11:50:26 +08:00
    不是一定要 URL,可以使用注册中心,使用服务名代替
    youngs
        4
    youngs  
    OP
       2018-02-22 14:50:49 +08:00
    @CYKun 内网本机 IP 风险不大
    youngs
        5
    youngs  
    OP
       2018-02-22 14:55:04 +08:00
    @jych1224 passport-service 就是使用服务名 单独使用报 404
    sghcel
        6
    sghcel  
       2018-02-22 16:14:31 +08:00
    没有使用服务配置中心吧
    youngs
        7
    youngs  
    OP
       2018-02-22 17:31:51 +08:00
    @sghcel 使用的 Eureka
    jameslan
        8
    jameslan  
       2018-02-23 06:53:12 +08:00 via Android
    检查服务注册好了?
    HuHui
        9
    HuHui  
       2018-02-23 11:10:53 +08:00
    @jameslan 如果写 url 的话,不需要去服务注册查找吧
    HuHui
        10
    HuHui  
       2018-02-23 11:11:52 +08:00
    @jameslan 嗯,需要。看错题主的问题了。
    Narcissu5
        11
    Narcissu5  
       2018-02-23 15:48:42 +08:00
    用 EurekaClient 或者 DiscoveryClient 的 getInstance 方法,看下能不能得到地址,可能是服务注册发现没有配置好。比如少了一些 Enable
    shawshi
        12
    shawshi  
       2018-02-24 10:03:52 +08:00
    先判断注册中心有没有这两个服务?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3077 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 12:54 · PVG 20:54 · LAX 04:54 · JFK 07:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.