Swagger 报错 TypeError: Failed to execute 'fetch' on 'Window': Request with GET/HEAD method cannot have body.

应该是因为在 get 请求中 接收参数用了 @RequestBody

解决办法: 直接去掉 @RequestBody 即可,光秃秃的就行,

也可以改成:@ModelAttribute

示例如下


@GetMapping("feign/formByBody")
public User formByBody(@ModelAttribute User user){
    System.out.println("sssssssssssss");
    System.out.println(user);
    return user;
}

  或

@GetMapping("feign/formByBody")
public User formByBody(User user){
    System.out.println("sssssssssssss");
    System.out.println(user);
    return user;
}

拓展:

get 与 @RequestParam 才是一对

post 与 @RequestBody 是一对

对于 get 请求,有时候想用实体类接受参数,就光秃秃放个实体类就行,而且当参数与属性名称不对应时也不会报错,只是不会对其赋值而已

posted on 2021-07-21 16:34  bkytian  阅读(1111)  评论(0编辑  收藏  举报

导航