当前位置: 首页 > 知识库问答 >
问题:

将表单数据从Spring控制器传递到外部endpoint

钱宇
2023-03-14

我的问题:有一个简单的超文本标记语言表单,操作="/myController"。我需要将表单数据发送到我的控制器,然后从那里我需要向外部控制器发送另一个POST。

<form method="post" action="/myController">
    <textarea name="data"></textarea>
</form>

我的Spring控制器看起来像这样:

@RequestMapping(method = RequestMethod.GET, value = "/myController")
@ResponseBody
public String myController(@RequestBody MultiValueMap<String, String[]> formData) {
    RestTemplate rest = new RestTemplate();
    ResponseEntity<String> response = rest.postForEntity("urlPath", formData, String.class);
    String manipulatedResult = manipulateResult(response.getBody());
    return manipulatedResult;
}

我需要将表单数据传递给我的控制器,它应该将表单数据进一步发送到“urlPath”并接收响应。我需要操纵这个响应并返回一个结果。我的问题是,如何在不操纵请求的情况下进一步发送表单数据?

提前感谢。

共有2个答案

徐友樵
2023-03-14

您可以使用ModelAndView类。请参阅以下链接:http://docs.spring.io/spring-framework/docs/2.5.6/api/org/springframework/web/portlet/ModelAndView.html

乌杰
2023-03-14

您的响应不需要是字符串,它可以是格式良好的java对象。在这种情况下,如果不将ResponseEntity对象转换为字符串,我看不到任何返回ResponseEntity对象的问题。

将返回的java对象转换为基于JSON/Xml的外部响应。

 类似资料:
  • 假设我在jsp中有这个表单 和Person类 编辑:控制器实现 我没有问题调用其他方法,但测试。

  • 因此,在我的Javascript中,我使用的是表单序列化,输出是正确的 (issubmit=1) 当我试图将其传递给我的控制器时,我什么也得不到,。我做错了什么? Jquery: 控制器:

  • 问题内容: 我的图像是我试图将数据(变量)从一个阶段传递到另一阶段,但是当我尝试在第二阶段访问它们时,它们为空。mainWindow的代码。前往window1 // window1类: 如果我想访问以前收到的标题,则为null 初始化显示应该为“ Window1”时显示为null} 问题答案: 在加载FXML文件的过程中,将调用该方法-换句话说,在调用时将调用该方法。 显然,这是 在 调用 之前

  • 我正在尝试在更改选项后将我的Thymeleaf超文本标记语言中已经提供的List传回控制器。我尝试过隐藏输入,但不幸的是,它还不起作用。 我的表单如下所示(控制器已经提供了“电影”列表) 我的控制器看起来像这样: 期待有人能帮助我!

  • 我有使用Springboot和Thymeleaf模板编写的简单Web应用程序。报告控制器从表单接收数据并构建TestPlanReportReportACK对象,该对象作为模型属性添加如下: 我可以在“图表”thymeleaf模板中使用该数据并显示我需要的数据,但我需要在单击按钮时将完全相同的对象发送回控制器,但我得到TestPlanReportACK对象作为设置空值的参数。 以下是我的按钮在图表模

  • 我是spring的新手,在spring3中创建了一个应用程序。0我正在使用注释spring。 我想从我的控制器方法返回列表到jsp。列表将显示在选择框中。以下是控制器和jsp部分的代码。请帮助我理解这一点。 和JSP 在模型中添加用户时,它工作正常,但是当我添加lookingfor属性时。model.add属性(“lookingfor”,lookingfor); 这是一个错误。 严重:Servle