0
点赞
收藏
分享

微信扫一扫

zuul No route found for uri:


一个web项目连接zuul网关连接后台多个服务。

示例:web端使用feignClient

package com.mark.demo.security.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;

import com.mark.demo.security.base.PaginateResult;
import com.mark.demo.security.entity.Menu;
import com.mark.demo.security.service.hystrix.MenuFeignFallBackFactory;
import com.mark.demo.security.service.hystrix.MenuFeignServiceHystrix;

/*
*hxp(hxpwangyi@126.com)
*2017年9月7日
*
*/
@FeignClient(name="menu",url="http://localhost:9999/service/menu",fallbackFactory=MenuFeignFallBackFactory.class)
@RequestMapping("/service/menu")
public interface MenuFeignService {
@RequestMapping("/getMenuTopLever")
List<Menu> getMenuTopLever();
@RequestMapping("/getMenuChildren")
List<Menu> getMenuChildren(@RequestParam("pid")int pid);
@RequestMapping("/updateMenu")
boolean updateMenu(@RequestBody Menu menu);
@RequestMapping(value="/list/data",method=RequestMethod.POST)
PaginateResult<Menu> listData(@RequestParam("menu") Menu menu,@RequestParam("pageSize")int pageSize,@RequestParam("currentPage")int currentPage);

}


zuul配置:

zuul.strip-prefix=true

zuul.routes.menu.path=/service/menu/**
zuul.routes.menu.service-id=menuService2

zuul.routes.resource.path=/service/resource**
zuul.routes.resource.service-id=resourceService

zuul.routes.user.path=/zuul/user/**
zuul.routes.user.service-id=userService

zuul.routes.commonRedis.path=/service/redis/common/**
zuul.routes.commonRedis.service-id=redisService


调试时发现404错误:日志打印zuul No route found for uri:


跟踪代码发现/zuul的默认context-path是/zuul,它会裁剪请求的url

加上一个配置

zuul.servlet-path=/


就可以调通了

举报

相关推荐

0 条评论