springboot使用PostMapping出现404

我使用post写的一个保存接口,如下:


@PostMapping(value = "save")
    @ResponseBody
    public String save(@PathParam(value = "id") String id) {
        EsArticleEntity esArticleEntity = new EsArticleEntity();
        esArticleEntity.setArticle_browse_count(12);
        esArticleEntity.setArticle_click_count(14);
        esArticleEntity.setArticle_content("fhasjkdfnhsajkfhnsjdkfnsdjk");
        esArticleEntity.setArticle_id("fhakjfbjasd");
        esArticleEntity.setUser_id(23);
        esArticleEntity.setArticle_date("20190-12");
        esArticleEntity.setArticle_img("//fsfsd");
        esArticleEntity.setArticle_label("java");
        esArticleEntity.setArticle_title("fhasfjkhsajfsjdfshajh");
        elasticSeartchServeiceIml.esSave(esArticleEntity);
        return "OK";

    }

 

使用postman测试出现404错误 ,如下

当我把请求的方式改为get的时候,控制台出现一下内容:

y有没有人曾经碰到过类似的情况呢?可以给一点建设性的问题吗?

 


@PostMapping(value = "save")
    public String save(@ResponseBody 实体类 实体类名) {


        EsArticleEntity esArticleEntity = new EsArticleEntity();


        esArticleEntity.setArticle_browse_count(12);


        esArticleEntity.setArticle_click_count(14);


        esArticleEntity.setArticle_content("fhasjkdfnhsajkfhnsjdkfnsdjk");


        esArticleEntity.setArticle_id("fhakjfbjasd");


        esArticleEntity.setUser_id(23);


        esArticleEntity.setArticle_date("20190-12");


        esArticleEntity.setArticle_img("//fsfsd");


        esArticleEntity.setArticle_label("java");


        esArticleEntity.setArticle_title("fhasfjkhsajfsjdfshajh");


        elasticSeartchServeiceIml.esSave(esArticleEntity);


        return "OK";


 


    }

试一下
 

 

@PostMapping注解对应的收参注解应该是:@RequestParam和@RequestBody

你用的收参注解@PathParam不对,换换注解

404就是路径错误,根本没进来接口。从你的这个方法路径是 save,不是 /save。 比如你的前缀路径是/api  

那你的访问路径就是localhost:port/apisave

PostMapping只能使用post请求,所以你使用get请求报错了。

你这个我猜测是你的路径不全,所以访问失败,你检查一下

save和/save我都试过了,都不行,我这个404是有一个页面的,如果访问路径错误的话也应该是返回这个404页面吧,现在这个感觉就是没有访问到服务一样

您好,浏览器默认是get请求,你接口是post请求有可能访问不到,但是可以通过测试工具来请求,比如“postman”。也可以参考https://blog.csdn.net/Im1997/article/details/112991648

我是使用postman的

@PathParam 取参数的时候好像是这样的链接  localhost/save/{Param1}/{Param2};

post请求取参数试试这个 @RequestParam

另外路径一定要写对。

嗯,我采用了@RequestParam,尝试了一下,结果也是404,我的路径直接从route复制的,应该不会有错

搞个swagger呗,清晰明了