Postman 不支持请求方法 'POST'

Request method 'POST' not supported in Postman

我已经创建了这个控制器

@PostMapping(value = "/validate")
    public ResponseEntity<GenericResponse> validate(@RequestBody @Valid FormulaDTO formulaDto) {
        System.out.println(formulaDto);
        String expression = formulaDto.getFormula();
        service.validate(expression);
        return new ResponseEntity<>(new GenericResponse(HttpStatus.CREATED.value(), "Expression Validated"),
                HttpStatus.CREATED);
    }

FormulaDTO 看起来像

public class FormulaDTO {

    private String formula;

}

我从邮递员创建了一个 PostRequest,其 body 包含 formulaText。 来自邮递员的 api 电话看起来像

https://localhost:8443/validate

和 body 一样

{
    "formula" :"M00212=curr_month:M00213-curr_month:M00211*100.00"
}

我得到以下输出和 500 内部服务器错误

{
    "timestamp": "2021-05-03",
    "message": "Request method 'POST' not supported",
    "details": "uri=/error"
}

如何使用 PostMapping?

在 postman 中使用 http 而不是 https

而不是这个:https://localhost:8443/validate

使用这个:http://localhost:8443/validate

正在看评论

There is no root level mapping at @RestController .

即使您在控制器上没有根级映射,似乎 spring 启动总是需要控制器级上的以下注释

@RequestMapping

添加它,它会被修复!