【发布时间】:2017-04-27 01:47:06
【问题描述】:
我没有发现问题。
控制器
@RestController("/api")
public class CoordenadaController {
@Autowired private RepositorioCoordenada repositorioCoordenada;
@PostMapping("/salvar")
public void save(String nome, int coordenadaX, int coordenadaY) {
this.repositorioCoordenada.save(new Coordenada(nome, coordenadaX, coordenadaY));
System.out.println("Salvou.....");
}
}
PostMan 客户端
网址 localhost:8080/api/salvar?nome=Igreja&coordenadaX=10&coordenadaY=20
记录 Erro PostMan 客户端
{
"timestamp": 1493257315171,
"status": 405,
"error": "Method Not Allowed",
"exception": "org.springframework.web.HttpRequestMethodNotSupportedException",
"message": "Request method 'POST' not supported",
"path": "/api/salvar"
}
春季日志错误
Request method 'POST' not supported
2017-04-26 22:41:55.168 WARN 8388 --- [nio-8080-exec-1] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved exception caused by Handler execution: org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' not supported
如果你在@RestController 中移除/api,使用@Post 注解的方法可以工作
localhost:8080/salvar?nome=Igreja&coordenadaX=10&coordenadaY=20
【问题讨论】:
-
在班级级别不需要
@RestController @RequestMapping("/api")吗? -
谢谢,是注意力不集中。
-
根据您的示例,您正在尝试做错事,您正在做得到。发布后您没有在查询参数中发送参数。所以要么做GETMapping,要么修复你的方法来拥有@RequestBody。看这里spring.io/guides/gs/rest-service
标签: java spring spring-boot