【问题标题】:Get values from received html body从收到的 html 正文中获取值
【发布时间】:2026-01-03 15:45:01
【问题描述】:

我想使用 Spring boot 从收到的 html 请求正文中获取正文值:

    @PostMapping(value = "/v1/notification")
    public ResponseEntity<String> handleNotifications(
            @RequestParam(value = "uniqueid", required = false)) String uniqueidValue,
            @RequestParam(value = "type", required = false)) String statusValue) {

        // Get values from html body

        return new ResponseEntity<>(HttpStatus.OK);
    }

例如当我收到通知正文时:

some_key=some_value&sec_key=sec_value

我想解析这些值。我该如何实现?

【问题讨论】:

  • @RequestBody
  • 这就是 RequestParam 所做的。用 some_key 替换 uniqueid,用 sec_key 输入。
  • 我可以实现一些过滤器吗?
  • 可能。但如果你想要更准确的答案,你应该问一个更准确的问题。

标签: java spring spring-boot


【解决方案1】:

您可以使用 Map 和 @RequestBody 来获取键值对请求,如下所示:

@PostMapping(value = "/v1/notification")
public ResponseEntity handleNotifications(@RequestBody Map<String,String> keyValuePairs) {
    // here you can use keyValuePairs
    // you can process some specific key like
    String value = keyValuePairs.get("someSpecificKey");

    return ResponseEntity.ok(value);
}

这里我附上邮递员请求示例:

【讨论】:

  • 这将返回地图?
  • 如何实现一些过滤器?例如我只想要指定的键?
  • 这属于你,我将编辑我的答案,向你展示返回地图和示例请求。
  • 我更新了我的答案以向您展示如何访问特定密钥,并附上了示例邮递员请求屏幕截图。