问题是,
解析 URL 字符串以在 Jetty 中选择响应函数的公认“优雅”解决方案是什么?
我提供了一些背景,但请随意跳过我的华夫饼!
情况是我用 Java 编写了一堆客户端/服务器代码,使用套接字连接来通信序列化的 Java 对象。显然,这取决于客户端和服务器都在 Java 中,虽然这很好,但我希望使系统更通用,对防火墙更具弹性。
因此,我决定创建一个 REST API 来通过 HTTP 传递数据。我不想生成任何 HTML - 所有响应都将是 JSON 编码的。因此,我不想为每个响应创建单独的文件 - 相反,我想根据其类型和 URL 将每个 HTTP 请求重定向到将产生 JSON 响应的 Java 方法。不幸的是,我对服务器编程的唯一经验是使用 Python/Django,此时我宁愿不更改语言。
所以我的问题很简单——如何设置嵌入式 Jetty 服务器来解析 URL?我试过阅读文档,但无法理解这一点。目前看来,有两种可能。
一是AbstractHandler javadoc的handle方法中的目标字符串 ,我相信它包含整个 URL 字符串?因此,我可以在 Java 方法中手动解析它,所有 Web 请求都将定向到该方法。
另一种是使用一个链的ContextServletHandler?不确定如何做到这一点,或者这是否是该功能的预期用途。*