Spring 中@RestController 中不支持请求方法@PathVariable
Request Method not Suported @PathVariable in @RestController in Spring
我有一个RestController
,现在我用@PathVariable
写了一个DELETE
方法:
@RestController("/msisdns")
public class MsisdnsController {
@DeleteMapping("/{msisdnToUnReserve}")
public String unreserveMsisdin(@PathVariable String msisdnToUnReserve) { ... }
}
但总是得到同样的错误...:[=20=]
我试过:
@DeleteMapping("/{msisdnToUnReserve}")
public String unreserveMsisdin(@PathVariable("msisdnToUnReserve") String msisdnToUnReserve)
或
@RequestMapping(value = "/{msisdnToUnReserve}", method = RequestMethod.DELETE)
public String unreserveMsisdin(@PathVariable("msisdnToUnReserve") String msisdnToUnReserve)
还有更多但总是同样的错误,我无法找到方法
有什么帮助吗?
这是我的Zuul.yml,应该如何翻译URI?
PD:/trasnlator
在 Zuul 中配置 Spring Cloud Netflix。
我在没有指定 produces
或 consumes
时遇到过类似的问题。您可以尝试是否可以解决问题。选择合适的类型(在我的示例中为 JSON):
@DeleteMapping(value = "/{msisdnToUnReserve}", produces = org.springframework.http.MediaType#APPLICATION_JSON_VALUE)
使用@RequestParam 而不是@PathVariable 它会起作用
而您的 URL 将是这样的:localhost:8080/msisdn?id="whatever your id"
我有一个RestController
,现在我用@PathVariable
写了一个DELETE
方法:
@RestController("/msisdns")
public class MsisdnsController {
@DeleteMapping("/{msisdnToUnReserve}")
public String unreserveMsisdin(@PathVariable String msisdnToUnReserve) { ... }
}
但总是得到同样的错误...:[=20=]
我试过:
@DeleteMapping("/{msisdnToUnReserve}")
public String unreserveMsisdin(@PathVariable("msisdnToUnReserve") String msisdnToUnReserve)
或
@RequestMapping(value = "/{msisdnToUnReserve}", method = RequestMethod.DELETE)
public String unreserveMsisdin(@PathVariable("msisdnToUnReserve") String msisdnToUnReserve)
还有更多但总是同样的错误,我无法找到方法
有什么帮助吗?
这是我的Zuul.yml,应该如何翻译URI?
PD:/trasnlator
在 Zuul 中配置 Spring Cloud Netflix。
我在没有指定 produces
或 consumes
时遇到过类似的问题。您可以尝试是否可以解决问题。选择合适的类型(在我的示例中为 JSON):
@DeleteMapping(value = "/{msisdnToUnReserve}", produces = org.springframework.http.MediaType#APPLICATION_JSON_VALUE)
使用@RequestParam 而不是@PathVariable 它会起作用
而您的 URL 将是这样的:localhost:8080/msisdn?id="whatever your id"