java - 如何在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}/*”没有任何效果。
请有人帮助我,因为我是新手。
解决方案
您应该在@Path
示例中使用正则表达式:
@Path("{parameter: .*}")
Response getData(@PathParam("parameter") List<String> parameter){
//do processing
}
有关更多详细信息,您可以查看此处给出的示例。
推荐阅读
- php - 使用 PHP preg_replace 将文本附加到使用正则表达式找到的模式
- c - 读入制表符分隔的文本文件的内容并保存到 C 中的单个数组中
- operator-precedence - Specifying default rules in the Curry language: Why and how?
- sql - 如何在 SQL 中创建日期而不将它们全部输入,然后为过去的几周创建一个聚合?
- javascript - 在 Spotify API 上尝试 POST 请求时解析 JSON 时出错
- angular - Jest 中与 Karma 中的文件选项等效的设置
- c++ - 为什么不能在 C++ 中使用基类指针访问派生类的成员函数?它的设计理念是什么?
- sqlite - SQLite importing csv file
- android - Firebase + Google Play 服务 = 错误:“com.google.android.gms:play-services-basement ... [[15.0.1,15.0.1]],但解析为 16.0.1”
- python - 如何保存编程链接