首页 > 解决方案 > 发布 API 调用显示 Method not allowed

问题描述

调用 post API 时出现以下错误。

405 方法不允许

从角度我正在调用 post API,如下所示。

private createFormUrl = `api/form/add`

public createForm(form: Form): Observable<string> {
    return this.httpClient.post<any>(this.createFormUrl, form)
      .pipe(catchError(this.handleError));
}

JAVA 中的 API

@RestController
@RequestMapping( value = "/api/form")
public class FormManagementController {

private FormManagementService formmanagementService;

@PostMapping(path = "/add",
            consumes = MediaType.APPLICATION_JSON,
            produces = MediaType.APPLICATION_JSON)
    public ResponseEntity<?> createForm(@RequestBody(required = false) Form form) {
        String respond = formmanagementService.createForm(form);
        return ResponseEntity.status(getProperHttpStatus(respond)).build();
    }

错误:

URL: http://localhost/api/form/add(在邮递员中工作)

在此处输入图像描述

我检查了,但是,GET 没有写在这个 API 的任何地方。

我在stackoverflow上查看了很多帖子,但是对我没有任何帮助。任何帮助将不胜感激。

标签: javaangularspringrest

解决方案


在 Postman 收藏中试用以确保其正常工作

因此,您可以将其隔离为特定角度的问题,您没有共享请求有效负载。如果不能在邮递员 alos 中工作,则进行代码更改。

而不是 @PostMapping 试试这个 @RequestMapping(value = "/add", method = RequestMethod.POST)

完整示例参考:不支持 Spring Boot 405 POST 方法?


推荐阅读