如何获取特定的标头(spring-boot应用程序)并传递给控制器​​?

时间:2019-06-14 08:43:47

标签: spring-boot

enter image description here

我在弹簧靴中有一个控制器。我想从Form Data获取formId(请参见上图)。 @RequestHeader(value =“ formId”)不起作用。如何获得价值?

2 个答案:

答案 0 :(得分:2)

首先,您需要以下依赖项,

<dependency>
    <groupId>javax.ws.rs</groupId>
    <artifactId>javax.ws.rs-api</artifactId>
    <version>2.1</version>
 </dependency>

然后,您可以使用以下示例代码获取表单数据值,

@PostMapping("/foo")
@ResponseBody
public ResponseEntity<?> getData(@FormParam("formId") String formId) {
    System.out.println(formId);
}

在这里,formParam变量名和参数名应该相等。

答案 1 :(得分:1)

formId不是来自标题,而是来自作为请求正文的表单数据。

您可以在此示例中获得它:

@GetMapping("foo)
public String foo(@RequestBody MultiValueMap<String, String> formData) {

     String formId = formData.get("formId");
     // your code
}