【发布时间】:2016-03-09 00:11:47
【问题描述】:
问题是当表单 POST 发生然后控制器进行重定向时,似乎重定向不知道它在 Zuul 后面。
表格:
@RequestMapping(value = "/create-something", method = RequestMethod.GET)
public String getForm(Model model, @CookieValue(value = "XSRF-TOKEN", defaultValue = "none", required=true) String token) {
model.addAttribute("title", "Create New Something");
model.addAttribute("_csrf", token);
return "views/create-something";
}
发布:
@RequestMapping(value = "/create-something", method = RequestMethod.POST)
public String postForm(Model model, @ModelAttribute Something something) {
SomethingClient.createSomething(something);
return "redirect:" + something.getName() + "/";
}
此设置将导致重定向尝试访问 UI 服务的内部 IP,而不是公共 Zuul URL。
【问题讨论】:
-
你是如何构建这个应用程序的?我想要一个 Spring MVC 前端,与 zuul 公开的 API 对话,最好在同一个 JVM(节点)中。很好奇怎么做?
-
@tgkprog 设置起来相当简单。看看 Spring Cloud Samples,你应该有一个好的开始。
标签: spring-mvc spring-cloud netflix-zuul