gpt4 book ai didi

java - Spring 引导 REST : @DeleteMapping that consuming form_urlencoded not work as expect

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:13:02 26 4
gpt4 key购买 nike

我正在使用 Spring boot 1.4.0,考虑以下 @RestController 中的代码,我期望的是,服务器端将收到一个带有 form_urlencoded 内容类型的 http 正文,但不幸的是它要求我是一个 query 参数类型,带有 emailtoken。这里有什么问题以及如何解决?

@DeleteMapping(consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
@ResponseStatus(HttpStatus.NO_CONTENT)
public void removeAdmin(@RequestParam(value = "email") String email, @RequestParam(value = "token") String token) {
//...
}

最佳答案

@DeleteMapping 只是提供@RequestMapping(method=DELETE) 的便利扩展,它不会处理请求参数。如果您需要数据来执行工作,您仍然必须将它们映射到 Controller 方法签名中。

既然你想要一个主体,你可以创建一个对象并将其标记为@RequestBody:

public class DeleteBody {
public String email;
public String token;
}

public void removeAdmin(@RequestBody DeleteBody deleteBody) {
...
}

关于java - Spring 引导 REST : @DeleteMapping that consuming form_urlencoded not work as expect,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41019062/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com