美文网首页
Eureka 的 RestTemplate 问题

Eureka 的 RestTemplate 问题

作者: 囿于昼夜 | 来源:发表于2016-12-21 11:21 被阅读1539次

    环境中配置了 Eureka ,在发起 HttpClient 请求时,遇到「eureka No instances available for ...」的问题。这是由于发起请求的目标域名在 Eureka 服务器中没有实例。
    资料 ,有两种解决办法:

    1. 不要使用 netflix 这套路由服务(这居然也是一种办法么= =);
    2. 不要使用默认的 RestTemplate 来发起请求,应 new 一个新的 RestTemplate 来操作。

    具体实现代码如下:

    JSONObject json = new JSONObject(sendParam);
    HttpHeaders headers = new HttpHeaders();
    MediaType type = MediaType.parseMediaType("application/json; charset=UTF-8");
    headers.setContentType(type);
    HttpEntity<String> reqE = new HttpEntity<String>(json.toString(), headers);
    RestTemplate restTemplate = new RestTemplate();
    ResponseEntity<Map> result = restTemplate.exchange(url, HttpMethod.POST, reqE, Map.class);
    

    待考:
    据说会有在 Eureka 上生成一个新实例的副作用。
    最稳妥的方法还是配置 potal 。

    相关文章

      网友评论

          本文标题:Eureka 的 RestTemplate 问题

          本文链接:https://www.haomeiwen.com/subject/lvaxvttx.html