首页 > 解决方案 > 如何在rest api java中指定路径注释以接受任何路径?

问题描述

我在 java 中使用 jersey rest 服务来接受请求。

这是我的片段

    @Path("main")
    public class xxxx{
      @GET
      @Path("test/{path}")
      public void test(@Context HttpServletRequest req ) {
         System.out.println(req.getRequestURI());
      }
    }

我使用 REST Api 作为 test/abcd 调用它,它正在工作。我希望@path 接受 test/abcd 或 test/abcd/ab 等等。我尝试使用“test/{path}/*”没有任何效果。

请有人帮助我,因为我是新手。

标签: javajax-rs

解决方案


您应该在@Path示例中使用正则表达式:

@Path("{parameter: .*}")
Response getData(@PathParam("parameter") List<String> parameter){
     //do processing
}

有关更多详细信息,您可以查看此处给出的示例。


推荐阅读